javascript - 您如何从从 index.html 导入的 Javascript 脚本访问全局变量和函数并在组件中使用它们?

标签 javascript angular typescript angular6

我正在使用 Angular 6,并且我有一个需要在项目中使用的私有(private) JavaScript 库。我将它导入到 index.html 文件中。该项目使用全局间隔函数。我如何在组件内部访问它们。 Angular 不会给我错误,也不会识别它们。

index.html
.....
<script src="https://somefile.js type="text/javascript" charset="utf-8">
.....

// has a function 
doXYZ()  in the global namespace


somecomponent.ts
......

ngOnInit() {
    doXYZ()  //try to call globally imported function
}
......

ERROR: Cannot find name doXYZ when using ng serve

最佳答案

您可以访问 window 对象上的全局命名空间。

尝试像这样访问您想要的功能:

window['doXYZ']();

window 是全局可访问的。

关于javascript - 您如何从从 index.html 导入的 Javascript 脚本访问全局变量和函数并在组件中使用它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53987415/

相关文章:

javascript - 如何在动态输入上使用 GetElementsByClassName()

angular - 如何使服务器发送事件(SSE)通过 Zuul 代理 spring-boot 2.1.1 工作

Angular 9 与 ui 路由器混合导致尝试在设置 AngularJS 注入(inject)器之前获取它。如何调试/修复?

typescript :引用当前类类型

javascript - 在javascript中每次替换时增加一个数字

javascript - 使用 ajax 将数据从 javascript 发送到 PHP

angular - 我可以在 typescript 中获取通用类型的元数据吗?

angular - 尽管 tsconfig 目标设置为 ES5,为什么仍需要 ES7/array polyfill

javascript - JQuery 不适用于新插入的数据

angular - 使用嵌套模块的路由应该如何在 Angular 2 中工作?