【发布时间】:2017-07-03 07:07:42
【问题描述】:
我需要在 Angular 2 组件中添加托管的第三方 JavaScript 文件。每当在相关的第三方供应商专有系统中进行更改时,此文件都会更新,因此我不能简单地下载副本,将其包含在本地,然后将其导入项目中。
通常我会将此文件包含在脚本标记的顶层,然后只需使用declare <windowvar>: any 即可访问它。但是在这种情况下,由于组件本身正在尝试加载脚本,因此我无法声明 window 变量,因为在加载组件时它不存在于 window 对象上,这会产生错误。
我可以通过手动添加脚本标签来加载脚本,这很有效,但是我需要访问它创建的窗口变量才能正确使用它。而且我不能简单地使用间隔来查找它,因为打字稿会抛出 <windowvariable> does not exist on object window 的拟合。
我有什么方法可以 1) 在组件中加载托管的 JavaScript 文件,以及 2) 访问由加载的 JavaScript 文件创建的窗口变量?
【问题讨论】:
标签: javascript angular typescript angular2-services