我正在考虑为我正在开发的应用程序从本机JS切换到TS。我已经创建了一个新的分支来测试东西 - Typescript本身似乎没问题,但是我面临的一个主要问题是:我使用的一些供应商没有任何问题。或者只是过时的定义文件。
现在的问题是:如何处理丢失的定义文件?
我可以做类似
的事情declare var sails: any;
但这真的是个好主意吗?
答案 0 :(得分:1)
declare var sails: any;
是黑客。让自己开始,或让你尝试一个图书馆,看看它是否真的有效,这是很好的,但你最好的选择是要明确。 (只要你的项目中有: any
,它就应该是你需要修理的红旗 - 但实际上几乎每个人都有any
或两个(或更多)漂浮在一起。话虽如此:像帆一样大的东西不是any
。
那么,你能做什么?
如果您使用的是Typescript 2,则可以安装大多数定义,但必须通过npm输入
npm i -g @types/thing-you-want
(不幸的是,它看起来不像Sails在DefinitelyTyped上)
您也可以尝试谷歌搜索,看看是否有其他人写了一个明确打字的不的定义文件,但仍然有效。
虽然做好了准备,但即使绝对打字也不能保证是正确的,可能需要按摩。
根据需要编写您的定义
这可能是你反对的。这肯定不是那么彻底,但它通常会让你到达你需要去的地方。查找所需API部分的文档,并将这些定义添加到.d.ts
文件中。
如果你这样做,那就不那么压倒性了,如果你这么倾向,你可以在完成后将你的工作贡献给DefintielyTyped:)。