2017-08-30 28 views
0

因此,我嘗試將我們的網站從靜態SPA遷移到Angular Universal Rendered Server Side,並且我遇到了Google Analytics問題。Angular 4 Universal - Google Analytics /僅限客戶端代碼

在我的SPA中,我通過html腳本在index.html中定義了GA,但在服務器端渲染中顯然沒有意義。

我想:

if(ga) { 
    ga.create(...); 
} 

得到它只能運行在GA初始化(這應該是在客戶端上而不是在服務器上),但我得到一個未定義的對象錯誤( ReferenceError:ga未定義 - 在if(ga)行上),其中未定義的值應該是falsy值。

所以我試圖尋找如何只運行代碼客戶端,我發現isBrowser,但是從angular2萬能那是,我無法找到像在平臺服務器或平臺的瀏覽器什麼...

謝謝!

回答

1

因此檢查typeof窗口是不是未定義的。我可能會抽象出一個服務,但這讓我超過了POC的第一個駝峯。

if (typeof window != 'undefined')

相關問題