【发布时间】:2019-08-19 19:03:47
【问题描述】:
Google 跟踪代码管理器 (GTM) 有一个名为“Just Links”的内置触发器。在我的 VueJS 应用程序中,使用 Vue Router,GTM在触发“Just Links”触发器之前触发“History Change”事件。
(“历史变化”事件与页面浏览事件无关)
因此,Page PathGTM 数据层变量应该是触发事件的路径,与Click URLGTM 数据层变量的值相同,即@ <a/> 标签中的 987654323@ 值。
例如:
- 用户在
/support - 用户点击链接到
/about - Vue Router 更新浏览器历史记录
- History Change 事件触发并更新 Google 跟踪代码管理器数据层的所有内部值(包括位置和页面路径)
- “Just Links”事件触发,
Page Path和Click URL值现在都是/about
我假设 GTM/Google Analytics 有某种类型的内置延迟策略,不会干扰在主 Javascript 线程上运行的其他东西。所以 Vue 路由器会在 GTM/Google Analytics 触发“Just Links”触发事件之前更改路由(因此触发历史更改)。
(奇怪的是,当您在 GTM 中使用内置的 Click - All Elements 时,事件会以正确的顺序触发。)
有没有其他人遇到过这个问题并提出了任何类型的解决方案?可能有一个只使用Click - All Elements 的解决方案,但默认情况下不会使用<a/> 遍历DOM 树并去除Click URL 值的href,这意味着在@987654334 内的嵌套元素上提取href 值@ 不起作用。但是,Just Links 确实这样做了。
谢谢!
【问题讨论】:
标签: google-analytics vuejs2 google-tag-manager vue-router