假设我在页面中插入了一个外部 javascript 并将一些内容导出到外部范围(即将它们绑定(bind)到窗口)。
我想在我的 typescript 项目中调用其中一些属性:
UndeclaredExportedProperty.aFunction()
但是 typescript 不允许我编译那个><
我不想通过复杂的方式来声明模块的整个接口(interface),因为我不知道它,坦率地说我不关心它。它只是一个我必须调用一次的模块,并且“相信”在我调用它时它已加载并包含正确的元素(它不是关键的,所以不调用它不会让世界着火)。
使用 typescript 执行此操作的最简单方法是什么?
编辑以响应标记为重复:
虽然那个问题的答案确实解决了我的问题,但问题是不同的(例如,stack 无法将其作为重复建议找到)而且我觉得对于我正在尝试做的事情,Pokus 的答案是更多比那个问题的答案直接和通用的解决方案
也就是说,如果管理员觉得这仍然是重复的或简单的问题,请随时删除/关闭,因为我已经得到了答案。就个人而言,我会保留它,因为下一个通过谷歌搜索的人可能会更容易找到答案。
最佳答案
你应该为此使用 declare 关键字:
declare var UndeclaredExportedProperty: any;
官方文档在这里说明了这一点: https://www.typescriptlang.org/docs/handbook/modules.html在本节中 使用其他 JavaScript 库
关于javascript - Typescript - 如何避免未声明对象的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44101308/