← [ BACK_TO_NOTES ]

TypeScript 中的 declarationDir

说明 declarationDir 如何单独指定 .d.ts 的输出目录,以及它为什么常和 declaration 一起出现。

#dev #typescript #concept #growing

[!info] related notes

TypeScript 中的 declarationDir

一句话定义

declarationDir 用来单独指定 TypeScript 声明文件的输出目录。

核心机制 / 工作原理

官方文档说明,它提供了一种方式来配置:

  • declaration files emitted 的根目录

也就是:

.d.ts 不一定要跟普通 .js 产物放在同一目录里。

例如:

{
  "compilerOptions": {
    "declaration": true,
    "declarationDir": "./types"
  }
}

这样生成的声明文件会进入 types/,而不是默认跟着普通输出目录走。

最小例子 / 最小场景

{
  "compilerOptions": {
    "declaration": true,
    "declarationDir": "./types"
  }
}

这常见于:

  • 想把运行时产物和类型产物分开
  • npm package 需要更清晰的发布目录
  • monorepo 中希望声明文件单独归档

边界与易混淆点

它不等于 outDir

outDir 更像:

  • 普通编译产物的输出目录

而 declarationDir 更像:

  • 仅 .d.ts 的输出目录

它通常要和 declaration 一起看

如果根本没有开启声明文件生成,那么只写 declarationDir 没有意义。

它更偏发布与构建组织

这个选项主要影响产物布局,不改变类型语义本身。

参考信息

创建于 2026/5/15 更新于 2026/7/15
Digital Biome
Access

键盘导航

j / k / ↑ / ↓
选择对象
Enter / o
打开选择
/ 或 Ctrl+K
全站搜索
i / f / 1–4
筛选当前列表
g → h / l / p / t / a
首页 / 笔记 / 项目 / 工具 / About
r → 1–9
打开所选对象的关联
u
返回上一页
Esc
关闭浮层 / 取消命令;输入框内清空文本