2017-08-03 30 views
0

我有我的Angular站點,並且我想僅在綁定生產應用程序時才添加谷歌分析。我取出放在HTML成TS文件下面這個例子的代碼:使用TS注入的谷歌分析不起作用,但它確實使用JS

https://www.snip2code.com/Snippet/1003397/Google-Analytics-Typescript

這是有道理的,看起來非常相似的實際JS和我安裝了(我改變了ID到我的網站ID)。

https://www.npmjs.com/package/@types/google.analytics

獲得編譯網站的時候被加載的類型。生成相應的JS文件,但谷歌分析不起作用。但是,如果我將HTML文件中的原始JavaScript放入JS文件並添加該文件,它就會起作用。

所以我的問題是,使用TS文件時還有什麼要做嗎?

+0

您可以在GA上啓用調試模式,以查看應用程序引導時是否實際發生調用。這可能有幫助。 – chrispy

回答

0

在你的代碼有

export var gaNewElem : any = {}; 
export var gaElems : any = {}; 

這改變了原來的代碼。不要這樣做。反映這些變量存在的正確方法是:

declare var gaNewElem: any; 
declare var gaElems:any; 
+0

您的建議不幸運行。我不得不說,我使用的是webpack,而且我正在引用包裝類型/ google.analytics中的類型,應該在捆綁時拾取它們,但它不是 –