前言

关键字
声明文件、compilerOptions.typeRootsincludenode_modules/@types

notes

什么是声明文件?
.d.ts结尾的文件

声明文件的作用?
为 js 代码提供类型声明

声明文件的位置?

  1. tsconfig.json 的配置项include
  2. node_modules/@types 文件夹中
  3. tsconfig.json的配置项compilerOptions.typeRoots
  4. 与 JS 代码所在的目录相同,并且文件名也相同的文件。「推荐」

声明文件的位置只要是在 include 包含的目录下就可以识别,也可以存在于子目录中。

一般在安装第三方库的时候,它们的声明文件都是在 node_modules/@types 文件夹中。
也有不少第三方库采用的是第 4 种实现方式。

如果手动配置了 compilerOptions.typeRoots 那么 1 和 2 位置上的声明文件将失效。

上面介绍的 4,其实就是用 TS 代码书写的工程发布之后的格式。