← [ BACK_TO_NOTES ]

TypeScript 中的 incremental

说明 incremental 如何通过保存项目图缓存来加快后续编译,以及它和 composite、project references、tsc build mode 的关系。

#dev #typescript #concept #growing

[!info] related notes

TypeScript 中的 incremental

一句话定义

incremental 让 TypeScript 把上一次编译的项目图信息缓存下来,以加快后续编译。

核心机制 / 工作原理

当配置:

{
  "compilerOptions": {
    "incremental": true
  }
}

时,TypeScript 会把构建状态保存到磁盘上的 build info 文件里。

这样下一次编译时,它就不必从零重新分析整个项目。

如果你还想控制这份缓存文件具体写到哪里,可以继续看:

最小例子 / 最小场景

{
  "compilerOptions": {
    "incremental": true
  }
}

这在以下场景里最常见:

  • 大型单仓项目
  • 需要频繁跑 tsc 的本地开发流程
  • monorepo build / watch

边界与易混淆点

它是“缓存机制”,不是“项目依赖结构”

incremental 负责的是:

  • 后续编译如何更快

它不负责定义:

  • 跨项目依赖方向
  • 引用顺序

这些更接近:

  • references
  • tsc -b

它和 composite 有关联,但不等价

composite 更偏“可被引用的构建单元”;

incremental 更偏“把上次分析结果缓存起来”。

两者经常一起出现,但关注点不同。

它不会改变类型系统语义

这个选项主要影响构建性能和工作流,不改变代码本身的类型规则。

参考信息

创建于 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
关闭浮层 / 取消命令;输入框内清空文本