跳到主要内容

配置与工程实践

tsconfig 决定检查有多严、输出长什么样,以及如何与打包工具分工。

常用 compilerOptions​

选项建议
strict打开(见下一篇)
target / lib按运行环境选
module / moduleResolution与运行时或打包器一致
noEmit若只让 tsc 做类型检查、由 Vite 等负责打包,可开
skipLibCheck大仓可开,跳过 .d.ts 全量检查以加速
isolatedModules与 esbuild/swc 等单文件转译友好

与打包工具协作​

常见分工:

  1. 开发/打包:Vite、esbuild、swc 转译 TS(擦除类型),见 构建工具与 Vite
  2. CI / 编辑器:tsc --noEmit 做完整类型检查

不要假设「打包成功 = 类型正确」。

项目引用直觉​

大型仓可用 Project References 拆多个 tsconfig,用 composite + references 增量构建。中小项目一个 tsconfig.json 足够。

要点​

  1. 先对齐 module 与解析策略
  2. 打包器转译 ≠ tsc 类型检查
  3. noEmit 适合「检查与构建分离」
  4. 项目引用按需上,不要过早拆