我对 .d.ts
声明文件很好奇,因为我是 TypeScript 编程语言的新手。有人告诉我 .d.ts
文件类似于 .h
C 和 C++ 编程语言中的头文件,但是, .d.ts
文件似乎不工作完全一样。目前,我无法理解如何正确使用 .d.ts 文件。看来我无法将我的 .js
或 .ts
文件添加到 .d.ts
文件中,所以我的项目将工作的唯一方法是如果它包含所有三个文件类型。这似乎是很多文件。为了帮助我更好地了解 .d.ts 文件与 JavaScript 和 TypeScript 的关系,我有一些问题想问。
这三个文件有什么关系?他们之间的关系?
如何使用
*.d.ts
文件?这是否意味着我可以永久删除*.ts
文件?如果是这样,
*.d.ts
文件如何知道哪个JS文件映射到自己?
如果有人能给我举个例子,那就太好了。
原文由 user3221822 发布,翻译遵循 CC BY-SA 4.0 许可协议
“d.ts”文件用于提供关于用 JavaScript 编写的 API 的 typescript 类型信息。这个想法是你正在使用 jQuery 或 underscore 之类的东西,一个现有的 javascript 库。你想从你的打字稿代码中使用那些。
您可以编写仅包含类型注释的 d.ts 文件,而不是重写 jquery 或下划线或打字稿中的任何内容。然后从您的 typescript 代码中,您可以获得静态类型检查的 typescript 好处,同时仍然使用纯 JS 库。
这要归功于 TypeScript 的限制,即不允许您在
import
语句的末尾添加“.ts”扩展名。因此,当您引用某个文件时,比如说my-module.js
,如果旁边有一个my-module.d.ts
,那么 TypeScript 将包含其内容:我的模块.js
我的模块.d.ts
索引.ts