2016-12-13 72 views
0

我創建了一個名爲env.js的全局env變量,我可以使用外部角度,但是我想在angular2中使用相同的env變量。angular2如何導入窗口

(function (window) { 
window.__env = window.__env || {}; 
    window.__env.baseUrl= 'http://www.examplesite.com/1'; 
    window.__env.otherUrl = 'http://www.examplesite.com/2'; 
    window.__env.baseUrl = '/'; 
}(this)); 

但是當我用window.__env.baseUrl它給我的.__env.baseUrl錯誤的Window類型不存在。所以只是想知道我怎樣才能導入Window,所以它可以讓我使用.__env.baseUrl

回答

2

這是因爲編譯器檢查類型,它只知道窗口對象的「公共」屬性。

你可以在 「使用」 這樣的全局變量:

declare var xxx: any; 

export class .... { 

} 

你的情況,那就是:

declare var __env: any; 
+0

,這將是在'typings.ts'? – MrNew

+0

@MrNew不,你可以在任何類中使用它,只需在類聲明前加上 –

+0

謝謝雖然它仍然顯示相同的錯誤:/ – MrNew