本文档介绍了跟踪代码管理器参数对象的用途和表示形式。
简介
借助 Tag Manager API,您可以创建和管理跟踪代码管理器资源 (例如代码、规则和宏)。
大多数代码和宏类型都具有专属的额外参数,可在创建/更新资源时加以设置。列表
每个代码和宏的参数(key
、type
对)的数量
列于
代码字典
参考文档和宏字典
参考文档。
要配置这些特定于代码或宏的参数,参数
对象已定义,并将其设置为 parameter
的值
属性(位于 Tag 中)
或
Macro 资源。
参数对象
以下对象表示参数对象:
[ { "type": string, "key": string, "value": string, "list": [ (Parameter) ], "map": [ (Parameter) ] } ]
type
要配置的代码或宏的参数类型。
type
属性用于确定需要在参数对象中包含 value
、list
还是 map
属性,如下表所述。
例如,如果 type
的设置是 boolean
,则参数对象中应包含已设置为 true
或 false
的 value
属性。
值 | 要包含的额外属性 | 额外属性的具体设置内容 |
---|---|---|
template |
value |
value 可以是任何字符串,包括宏引用,例如
foo{{bar}} 。 |
boolean |
value |
value 是 true 或 false 。
|
number |
value |
value 是一个整数值。 |
list |
list |
list 将包含零个或多个参数,顺序可能重要,也可能不重要;list 中的任何参数的 key 均会被忽略。 |
map |
map |
map 将包含零个或多个参数,顺序不重要;map 中的任何参数上的 key 均应具有唯一性。 |
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" } ]