[英]How to get google analytics to show correct active page on SPA using gtag.js?
我是Google Analytics(分析)的新手,所以我將gtag.js
代碼添加到HTML頁面標題中,它非常適合初始頁面加載。 但是,我使用React和react-router來動態更改URL,並且當我的SPA中發生URL更改時,Google Analytics(分析)不會選擇活動頁面或新匹配中的更改。
我找到的答案是ga.js
而不是gtag.js
我試圖通過其他方法將URL偵聽器改編成Google的文檔建議 ,以適應我的需要。.盡管代碼是在動態頁面加載時運行的,但沒有任何內容發送到GA。
window.gtag && history.listen((location)=>{
console.log('>>>', location.pathname)
gtag('config', 'GA_TRACKING_ID', {'page_path': location.pathname});
// window.ga('set', 'page', location.pathname); //--> this would have worked with ga.js
// window.ga('send', 'pageview', location.pathname);
});
我想這可能是一個React問題。 考慮檢查此線程: React router 4 history.listen從不觸發
結果證明該解決方案在Google跟蹤代碼管理器方面。 如果我鏈接的GTM文檔中所示的事件觸發失敗,那么如果GTM端沒有偵聽此事件的Tag和偵聽該Trigger的Tag,則不會產生任何效果。
所以步驟是:
VirtualPageview
事件 VirtualPageview
事件。 如下所示完成 -
export function virtualPageviewOnRouteChange(history){
let previousPathname = null
window.gtag && history.listen((location)=>{
if(previousPathname != location.pathname){
previousPathname = location.pathname;
gtag('config', 'GA_TRACKING_ID', {'page_path':location.pathname});
dataLayer.push({
'event':'VirtualPageview',
'virtualPageURL':location.pathname,
});
}
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.