0
如果打字稿应该是JavaScript的(像宣传的那样),那么为什么我不能简单地导入外部库的严格超集,而不必引用相应d.ts
文件,它的工作?为什么我不能按原样使用普通的JavaScript库(没有类型检查)?为什么TypeScript需要“声明文件”来使用外部库?
如果打字稿应该是JavaScript的(像宣传的那样),那么为什么我不能简单地导入外部库的严格超集,而不必引用相应d.ts
文件,它的工作?为什么我不能按原样使用普通的JavaScript库(没有类型检查)?为什么TypeScript需要“声明文件”来使用外部库?
它并不“需要”你这样做。无需声明即可使用外部库。
背后打字稿的整体思路是,以避免错别字和不正确的类型处理。如果你使用没有任何类型信息的外部模块,那么打字稿有什么意义呢?
最后,您可以通过使用以下语法避免声明的必要性:
const module = require('module');
我用的打字稿编译下来旧的浏览器ES6代码,并进行类型检查自己的代码。我不需要第三方库进行打字,但Visual Studio中仍抱怨“无法找到名为”如果我不引用'd.ts'文件呢,这是个问题。 – Sunny
对于第一种情况,您可以使用babel。这完全是关于类型检查。对于第二个,只需使用“const”而不是“import”。 – Louy
现在我正在使用'const',但仍然出现错误。我正在使用Visual Studio 2015和TypeScript 1.7.4。 – Sunny