reactjs - 是否可以触发“集装箱装载”两次或强制 GTM 重新装载?(反应)
问题描述
我实际上正在开发一个大型 Web 应用程序,它最初是使用 Symfony/Twig 构建的,然后使用 React 逐渐重构。但是由于我使用的是 React,所以我的一些页面在 Google 跟踪代码管理器 (GTM) 中没有“视图”。
我按照本指南在 React 中使用 GTM。但是我在 GTM 中有很多(数十个)标签和触发器,基于 3 个原生事件“容器加载”(gtm.js
)、“DOM 就绪”(gtm.dom
)和“窗口加载”(gtm.load
)。
第一个解决方案(来自指南)是添加一个新的自定义触发器(基于历史源)并将我们的标签链接到这个新触发器上。但由于我有太多标签,这不是一个令人满意的解决方案。
第二种解决方案是使用数据层手动触发事件。这很好用,我可以轻松触发“DOM Ready”和“Window Loaded”事件。但是对于“已加载容器”,它不能按预期工作。我猜 GTM 在每次页面加载时不会多次处理此事件。
所以,这是我的问题:
- 是否可以在 GTM 中“伪造重新加载”(这样 GTM 就像我打开一个新页面一样)?
- 或者是否可以
gtm.js
多次触发“集装箱装载”( )?
“正常”容器加载触发器的屏幕截图:
手动调用 Container Loaded 触发器的屏幕截图(来自 React):
解决方案
不可以。你可以打电话gtm.dom
或gtm.load
不止一次打电话,但不能gtm.js
。
推荐阅读
- c# - 使用对 DataTable 所做的更改更新数据库表
- r - R在闪亮的应用程序中加载自己的包
- ios - Alamofire 编码 [[String: Any]]
- scala - 如果在多个条件下,SparkSQL 求和
- javascript - 为什么一个函数在被追加时返回为null,或者设置为textContent?
- ag-grid-ng2 - 在 ag 网格中单击按钮时复制 rownode
- java - ConcurrentSkipListMap 不能有不可比较的键,对吧?
- javascript - 使元素填充其容器的宽度并且没有边距将其推出该容器?
- arrays - 数组的大小在 Swift 中总是返回 0
- reporting-services - 导出到 excel 添加其他列并合并它们