2016-12-13 72 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”中声明的模块,组件或服务中。

一旦这个到位,它按预期工作。