В этом документе описывается назначение и представление объекта параметра Диспетчера тегов.
Введение
API Диспетчера тегов позволяет создавать ресурсы Диспетчера тегов, такие как теги , правила и макросы , и управлять ими.
Большинство типов тегов и макросов имеют дополнительные параметры, специфичные для тега или макроса, которые можно установить при создании/обновлении ресурса. Список параметров ( key
, пары type
) для каждого типа тега и макроса указан в справочнике по словарю тегов и справочнике по словарю макросов .
Чтобы настроить эти параметры, специфичные для тега или макроса, определяется объект параметра и устанавливается в качестве значения свойства parameter
ресурса тега или макроса .
Объект параметра
Следующий объект представляет объект параметра:
[ { "type": string, "key": string, "value": string, "list": [ (Parameter) ], "map": [ (Parameter) ] } ]
type
Тип параметра настраиваемого тега или макроса.
Свойство type
будет определять, нужно ли включать в объект параметра свойство value
, list
или map
, как описано в таблице ниже.
Например, если type
установлено значение boolean
, то свойство value
должно быть включено в объект параметра и присвоено ему значение true
или false
.
Ценить | Дополнительное имущество, которое следует включить | Для чего установить дополнительное свойство |
---|---|---|
template | value | value является любая строка, включая ссылки на макросы, например foo . |
boolean | value | value либо true , либо false . |
number | value | value является целым числом. |
list | list | list будет содержать ноль или более параметров, порядок может иметь/не иметь значения; key любого параметра в list будет игнорироваться. |
map | map | map будет содержать ноль или более параметров, порядок не имеет значения; key любого параметра на map должен быть уникальным. |
key
Ключ параметра настраиваемого тега или макроса.
key
поле используется для идентификации параметра конкретных тегов или макросов, которые устанавливаются. Для всех типов параметров требуется key
свойство (кроме параметров list
).
Примеры
Объект параметра для пользовательского HTML-тега , который имеет один параметр типа template
и два параметра boolean
типа:
"parameter": [ { "key": "html", "type": "template", "value": "<script>alert('hello world')</script>" }, { "key": "supportDocumentWrite", "type": "boolean", "value": "false" } ]
Объект параметра для макроса таблицы поиска , который имеет два параметра типа template
и один параметр типа list
:
"parameter": [ { "type": "template", "key": "input", "value": "{{event}}" }, { "type": "list", "key": "map", "list": [ { "type": "map", "map": [ { "type": "template", "key": "key", "value": "EventEqualsThis" }, { "type": "template", "key": "value", "value": "ThenSetToThis" } ] } ] }, { "type": "template", "key": "defaultValue", "value": "MyDefaultValue" } ]
Объект параметра для тега вызова функции , который имеет один параметр типа template
и один параметр типа map
:
"parameter": [ { "key": "functionName", "type": "template", "value": "fn" }, { "key": "functionArgument", "map": [ { "key": "argkey1", "type": "template", "value": "argval1" } ], "type": "map" } ]