我有一个 amp 表单,当我提交它时会返回一个 json 值,然后我将数据绑定到 amp-mustache 模板中。问题是我需要使用 amp-analytics 来跟踪视图并在这些结果中单击。但是当小胡子模板可见时,分析代码不会被触发。任何人都有同样的问题或已经找到解决方案?
谢谢
我有一个 amp 表单,当我提交它时会返回一个 json 值,然后我将数据绑定到 amp-mustache 模板中。问题是我需要使用 amp-analytics 来跟踪视图并在这些结果中单击。但是当小胡子模板可见时,分析代码不会被触发。任何人都有同样的问题或已经找到解决方案?
谢谢
我刚刚遇到了这个确切的问题,看起来问题是模板内容没有被评估/绑定或者在页面首次加载时意味着你的主要分析触发器找不到它 - 我有一个控制台错误说明选择器我在负载上找不到正在使用的内容。
解决方案(目前可能更多是针对错误的解决方法),但如果您将其更多地视为未绑定在页面加载的 ajax 加载内容,则在模板中包含一个 amp-analytics 标记是有意义的标记,以便当您的模板在并且可以正确绑定到新元素时加载它。
我还在我的测试站点上验证过(因为我不确定),一旦添加,这不会干扰其他跟踪,并且每次在同一页面上提交表单时都会起作用。
带有模板的表单成功块的部分代码示例(在成功提交时显示):
<div submit-success>
<template type="amp-mustache">
Thanks {{name}}<br>
{{{message}}}
<amp-img
width="1"
height="1"
alt="track-success"
src="/resources/images/pixel.png"
id="enquirySuccessGATracking"
class="ga_track_custom_visible"
data-vars-ga-category="static category"
data-vars-ga-label="{{label}}"
data-vars-ga-action="{{action}}"
data-vars-ga-resource-id="{{customDimension1}}"
data-vars-ga-resource-action-id="{{customDimension2}}"
></amp-img>
<amp-analytics type="googleanalytics" id="amp-pagetracking">
<script type="application/json">
{
"vars": {
"account": "your-account-id"
},
"triggers": {
"trackVisibleEventWithCustomDimensions": {
"selector": ".ga_track_custom_visible",
"on": "visible",
"request": "event",
"vars": {
"eventCategory": "${gaCategory}",
"eventAction": "${gaAction}",
"eventLabel": "${gaLabel}"
},
"extraUrlParams": {
"d1": "${gaResourceId}",
"d2": "${gaResourceActionId}"
}
}
}
}
</script>
</amp-analytics>
</template>
</div>