2016-12-13 41 views
0

我遇到了我的新Angular CLI項目(版本信息如下)的問題。看來窗口對象的擴展不再適用於新版本。Angular CLI - 窗口對象的擴展不再起作用

納克--version 角-CLI:1.0.0-beta.17 節點:6.9.1 操作系統:win32的64 窗10

我有一個myAPI.js文件看起來像這樣。 ..

var myAPI = myAPI || {}; 

(function(myAPI) { 
... 
... 
}(myAPI)); 

window.myAPI = myAPI; 

我有一個myAPI.d.ts文件,其中定義了該接口(沒有別的)。

interface Window { 
myAPI: any; 
} 

在我的打字稿代碼,我曾經是能寫window.myAPI.XXX和它的工作很好,我最近更新的版本之上和它不工作了。

錯誤消息是,window.myAPI未定義。

這是以前工作的版本中的ng --version細節。

角CLI:1.0.0-beta.10 節點:6.3.0 操作系統:Win32的64

有某種改變了這一切停止這樣的事情從1.0.0-beta.10之間的工作和1.0.0-beta.17?

回答

0

的問題是這樣的:

由於它不是自舉的是必須在其定義的界面中的「myAPI.d.ts」文件中的新版本中引入的模塊化。

爲了解決這個問題,需要將接口定義添加到隨後導入並在「app.module.ts」中聲明的模塊,組件或服務中。

一旦這個到位,它按預期工作。