undefined
配置 TypeScript 声明文件的生成。
DTS 生成是一个可选功能,你可以设置 dts: true
来启用 bundleless 的 DTS 生成。
如果你想要禁用 DTS 生成,可以设置 dts: false
或者不指定 dts
选项。
如果你想要自定义 DTS 的生成,可以将 dts
选项设置为一个对象。
boolean
false
是否打包 DTS 文件。
如果你想要 打包 DTS 文件,你需要:
dts.bundle
设置为 true
。@microsoft/api-extractor 只支持为单个入口打包 DTS。如果你想要为多个入口生成打包后的 DTS,你可以在 lib 字段中添加额外的 lib 配置,将多个入口拆分为多个 lib 配置。
当我们打包 DTS 文件时,我们需要指定哪些第三方包的类型需要被打包,可以参考 处理第三方依赖 文档了解更多关于 externals 相关的配置。
string
DTS 文件的输出目录。
默认值按照以下优先级确定:
dts.distPath
值。tsconfig.json
文件中的 declarationDir
值。boolean
false
是否在生成 DTS 文件时构建项目的 references。这相当于在 tsc
命令中使用 --build
标志。更多详细信息请参考 项目引用。
当启用此选项时,你必须在 tsconfig.json
中显式设置 declarationDir
或 outDir
以满足构建要求。
boolean
true
当 DTS 生成过程中出现错误时,是否中止构建过程。
默认情况下,类型错误会导致构建失败。
当 abortOnError
设置为 false
时(如下所示),即使代码中存在类型问题,构建仍然会成功。
当禁用该配置时,无法保证类型文件会被正确生成。
boolean
false
是否根据 format 选项自动设置 DTS 文件扩展名。
当 dts.autoExtension
为 false
时,DTS 文件扩展名默认为 .d.ts
。
当 dts.autoExtension
设置为 true
时,DTS 文件扩展名将会是:
当 package.json
中设置 type: module
时,esm
格式使用 .d.ts
,cjs
格式使用 .d.cts
。
当 package.json
中设置 type: commonjs
或没有 type
字段时,cjs
格式使用 .d.ts
,esm
格式使用 .d.mts
。
这遵循与 lib.autoExtension 相同的逻辑,但默认值不同,因为 DTS 文件扩展名可能会在不同的模块解析策略中造成一些问题。