我是静态类型的忠实拥护者,但有许多 JS 库没有类型定义或类型定义已过时,因此在您尝试使用较新的函数时会导致编译器错误。
在 TS 社区中是否有任何已知的解决方法/实践来克服这个障碍?
最佳答案
如果类型丢失、不完整或损坏,IMO 你能做的最好的事情是 make a pull request to DefinitelyTyped .
同时,这里有一些本地解决问题的方法:
- > Use a module declaration为缺失的模块声明类型
- 使用declaration merging将缺失的类型添加到类或接口(interface)中
- 根据库的类型使用您自己的自定义类型并进行适当的更正
- 不推荐:执行类似
(lib as any).someMissingMethod()
之类的操作,或在以下行上方添加一个//@ts-ignore: explanation here
注释错误,暂时抑制错误。
关于javascript - 处理没有类型或更新类型的 TS 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50633849/