1
我有一個建在React JS
棧上的SPA。我正在使用react-router
瀏覽網頁,我需要在我的網站上執行Google AdWords
。如何防止Google AdWords腳本阻止在SPA中重新加載?
<script type="text/javascript">
/* <![CDATA[ */
goog_snippet_vars = function() {
var w = window;
w.google_conversion_id = 333333;
w.google_conversion_label = "33333";
w.google_remarketing_only = false;
}
// DO NOT CHANGE THE CODE BELOW.
goog_report_conversion = function(url) {
goog_snippet_vars();
window.google_conversion_format = "3";
var opt = new Object();
opt.onload_callback = function() {
if (typeof(url) != 'undefined') {
window.location = url;
}
}
var conv_handler = window['google_trackConversion'];
if (typeof(conv_handler) == 'function') {
conv_handler(opt);
}
}
/* ]]> */
</script>
我嵌入身體這個代碼,我跑goog_report_conversion
當我上按鈕,導航我到另一個網頁點擊。哪些是SPA的不良行爲。
<Link
className="btn btn-primary"
to="/settings"
onClick={() => goog_report_conversion('site.name/settings')}
>Go to settings</Link>
問題是,一旦我這樣做,它會完全重新加載我的網頁。 我知道這行導致該問題
window.location = url;
但是,如果沒有它的腳本不起作用。
我也嘗試在Google跟蹤代碼管理器中創建此事件,並按照此處給出的建議Google Tag Manager causes full page reload in SPA - React,但它沒有幫助我。
有沒有人遇到過在SPA中實施AdWords的相同問題?你是如何解決它的?
在什麼樣的wa Ÿ它不工作?如果您不提供可選的url參數,則不應該有重定向。 –