我正在尝试将 NextJS 应用程序转换为 GA4。
初始页面加载按预期发送事件,但后续页面(通过单击由 Next 的 Link 组件生成的链接访问)将记录浏览量事件两次。正如预期的那样,其他事件会触发一次。
换句话说,如果我转到页面 A,然后单击页面 B 的链接,页面 A 的实时事件将显示对页面 A 的一次访问,但对页面 B 的两次访问。
无法判断这是 GA4 错误、NextJS 错误还是我的实现有问题。
在我们传统的 GA 设置中没有观察到这种行为,即使在剥离所有现有的 GA 分析(通过React-GA使用)时也可以观察到这种行为,并且在开发模式内外都可以观察到。
GA4 标签通过在一个通用组件中包含以下内容加载到每个页面上:
<script async src="https://www.googletagmanager.com/gtag/js?id=G-xxxxxxxx" />
<script
type="text/javascript"
dangerouslySetInnerHTML={{
__html: `window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-xxxxxxxx');`,
}}
/>