2016-06-30 56 views
1

我有一个JavaScript文件,包含在我的Angular 2应用程序的<head></head>标签中。我想从我的打字稿文件中访问该JavaScript文件中的函数,我应该怎么做?当我运行该应用程序时,我可以在浏览器控制台中输入var simplemde = new SimpleMDE()以使我的降价编辑器正常工作,但我如何在构建器中在我的打字稿文件中执行此操作?访问JavaScript变量包含在打字稿的HTML标头中

+0

从一些代码开始。显示你的文件(或其中的一部分)。所以人们可以看一个具体的例子,而不是回答抽象的东西。 – sphinks

回答

3

就宣布它在你的组件的顶部或任何你需要它,像这样:

declare var SimpleMDE: any; 

然后,你可以把它在你的构造像你想要的!

+0

我试过这个,但是我收到错误:'TypeError:无法读取未定义的属性'getAttribute'。我在我的组件上面声明了变量,而在我的构造函数中,我有'let simplemde = new SimpleMDE();' –

+0

在构造函数中执行'var simplemde = new SimpleMDE();'时? – rinukkusu

+0

是的,我把它放在我的构造函数的第一行。 –

0

您可以使用namespacing,这基本上是一个对象,它封装了所有其他变量&功能

喜欢这个

var SomeObject={} 
SomeObject.abc = "Some Value"; 
SOmeObject.myFunction = function(){ 
    // function body 
} 

在其他文件中,你可以简单地调用SomeObject.abc &它将返回字符串Some Value

您应该使用命名空间来避免全局窗口的冲突