本章介绍什么是 TypeScript 声明文件(DTS)以及如何在 Rslib 中生成 DTS 文件。
TypeScript 声明文件 (DTS) 提供 JavaScript 代码的类型信息。 DTS 文件通常具有 .d.ts
扩展名。它们允许 TypeScript 编译器理解 JavaScript 代码的类型结构,从而实现以下功能:
Bundle DTS 将多个 TypeScript 声明文件 bundle 到一个声明文件中。
优势:
劣势:
Bundleless DTS 为库中的每个模块生成单独的声明文件,就像 tsc
一样。
优势:
劣势:
Rslib 默认使用 TypeScript Compiler API 生成 Bundleless DTS, 用 API Extractor 生成 Bundle DTS。
如果你想生成 Bundleless DTS,可以:
dts: true
或者 dts: { bundle: false }
在 Rslib 配置文件。如果你想生成 Bundle DTS,可以:
@microsoft/api-extractor
作为 devDependencies
, 这是用于 bundle DTS 文件的底层工具。dts: { bundle: true }
。你可以参考 lib.dts 获取更多有关 DTS 配置的详细信息。