Как отобразить пользовательский заголовок столбца с множественным выбором в sharepoint с помощью JSON? - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть сокращения в столбце с множественным выбором в SharePoint.Я хочу отобразить заголовок, который описывает аббревиатуру.Например, когда я наводю курсор мыши на ATZ, возможно, я хочу, чтобы он сказал «В зоопарке - ATZ».
Я только учусь использовать это и, похоже, не могу найти способ назначить строку для каждого $ChoiceIterator в цикле.Я могу поставить $ ChoiceIterator в заголовок, но я хочу добавить уникальное описание для каждого заголовка.

Спасибо!

Я пробовал образцы с этого сайта https://github.com/SharePoint/sp-dev-list-formatting/tree/master/column-samples/multi-choice-icons

Использование этого фрагмента после «title»: и попытка правильно вставить мой $ ChoiceIterator.

"=if(indexOf(join(@currentField,''),'dog') != -1, 'Yes', 'No')

Но в результате получается, что он показывает один и тот же текст для каждого выбора значка.

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
  "elmType": "div",
  "children": [
    {
      "forEach": "choiceIterator in @currentField",
      "elmType": "div",
      "txtContent": "[$choiceIterator]",
      "attributes": {
        "class": "ms-bgColor-themePrimary ms-fontColor-white",
        "title": "='This should describe the license... ' + [$choiceIterator]"
      },
      "style": {
        "width": "27px",
        "height": "16px",
        "text-align": "center",
        "margin": "2px"
      }
    }
  ]
}

Ответы [ 2 ]

0 голосов
/ 10 апреля 2019

Таким образом, приведенный выше ответ работает, но он постоянно отображает все значки. В моем случае я не хотел значки, я хотел иметь возможность создавать и выбирать собственные сокращения в столбце с несколькими вариантами выбора.

Чтобы сделать пример простым: У меня есть список клиентов в строках. Один столбец - это несколько вариантов пользовательских продуктов, приобретенных клиентом.

Есть 3 пользовательских варианта с длинными именами. Длинная коричневая кукуруза Большая оранжевая корова Широкий розовый Бискит

Если у клиента есть все 3 функции, я не хочу собирать колонку с этими длинными именами. Поэтому я хочу отображать их как сокращения с всплывающим заголовком при наведении курсора. LBC, BOC, WPB

Обратите внимание, что в конце этой строки вам нужна дополнительная пустая цитата ''. Это ELSE часть заявления IF, я думаю.

"title": "= if ([$ choiceIterator] == 'BOC', 'Big Orange Cow', if ([$ choiceIterator] == 'LBC', 'Long Brown Corn', if ([$ choiceIterator ] == 'WPB', 'Wide Pink Biskit', '') "

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
  "elmType": "div",
  "children": [
    {
      "forEach": "choiceIterator in @currentField",
      "elmType": "div",
      "txtContent": "[$choiceIterator]",
      "attributes": {
        "class": "ms-bgColor-themePrimary ms-fontColor-white",
        "title": "= if([$choiceIterator] == 'BOC', 'Big Orange Cow', if([$choiceIterator] == 'LBC', 'Long Brown Corn', if([$choiceIterator] == 'WPB', 'Wide Pink Biskit', '' )"
      },
      "style": {
        "width": "28px",
        "height": "16px",
        "text-align": "center",
        "margin": "2px"
      }
    }
  ]
}
0 голосов
/ 05 апреля 2019

Span использует заголовок в качестве всплывающей подсказки, поэтому вы можете установить заголовок как подробное описание для каждого диапазона.

enter image description here

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
  "elmType": "div",
  "style": {
    "font-size": "16px"
  },
  "children": [
    {
      "elmType": "span",
      "attributes": {
        "title": "Water Description",
        "iconName": "Precipitation",
        "class": "='ms-fontColor-' + if(indexOf(join(@currentField,''),'Water') != -1, 'themeDark', 'neutralLight')"
      },
      "style": {
        "padding": "0 2px"
      }
    },
    {
      "elmType": "span",
      "attributes": {
        "title": "Coffee Description",
        "iconName": "CoffeeScript",
        "class": "='ms-fontColor-' + if(indexOf(join(@currentField,''),'Coffee') != -1, 'themeDark', 'neutralLight')"
      },
      "style": {
        "padding": "0 2px 0 0"
      }
    },
    {
      "elmType": "span",
      "attributes": {
        "title": "Wine Description",
        "iconName": "Wines",
        "class": "='ms-fontColor-' + if(indexOf(join(@currentField,''),'Wine') != -1, 'themeDark', 'neutralLight')"
      },
      "style": {
        "padding": "0 2px"
      }
    },
    {
      "elmType": "span",
      "attributes": {
        "title": "Beer Description",
        "iconName": "BeerMug",
        "class": "='ms-fontColor-' + if(indexOf(join(@currentField,''),'Beer') != -1, 'themeDark', 'neutralLight')"
      },
      "style": {
        "padding": "0 2px"
      }
    },
    {
      "elmType": "span",
      "attributes": {
        "title": "\"Juice Description more...\"",
        "iconName": "MusicInCollectionFill",
        "class": "='ms-fontColor-' + if(indexOf(join(@currentField,''),'\"Juice\"') != -1, 'themeDark', 'neutralLight')"
      },
      "style": {
        "padding": "0 2px"
      }
    }
  ]
}

Есть много значков, которые вы можете использовать.

https://developer.microsoft.com/en-us/fabric#/styles/icons#icons

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...