导语:全面拥抱 TS 的时代,TS 已经成为日常开发中的重要部分。本文主要介绍 TS 声明文件的写法。
声明文件的定义
通俗地来讲,在 TypeScript 中以 .d.ts
为后缀的文件,我们称之为 TypeScript 声明文件。它的主要作用是描述 JavaScript 模块内所有导出接口的类型信息。
什么时候需要写 TS 声明文件
在日常的开发中,绝大多数时候是不需要我们单独去编写一个 TS 声明文件的。如果我们的文件本身是用 TS 编写的,在编译的时候让 TS 自动生成声明文件,并在发布的时候将 .d.ts
文件一起发布即可。
总结了以下三种情况,需要我们手动定义声明文件:
- 通过 script 标签引入的第三方库
一些通过 CDN 的当时映入的小的工具包,挂载了一些全局的方法,如果在 TS 中直接使用的话,会报 TS 语法错误,这时候就需要我们对这些全局的方法进行 TS 声明。
- 使用的第三方 npm 包,但是没有提供声明文件
第三方 npm 包如果有提供声明文件的话,一般会以两种形式存在:一是 @types/xxx
,另外是在源代码中提供 .d.ts
声明文件。第一种的话一般是一些使用量比较高的库会提供,可以通过 npm i @type/xxx
尝试安装。如果这两种都不存在的话,那就需要我们自己来定义了。
- 自身团队内比较优秀的 JS 库或插件,为了提升开发体验
如何编写 TS 声明文件
对于不同形式的声明文件,写法上会有一定的差异。这里需要特别注意一点的是:声明文件中只是对类型的定义,不能进行赋值。