配置与编译

使用 TypeScript 编写的代码需要编译为 JavaScript 代码才能够在浏览器或者 Node.js 中使用。TypeScript 代码的编译通常使用 TypeScript 提供的 tsc 编译命令来完成。tsc 命令通常使用 tsconfig.json 文件来完成配置,该文件一般放置在项目根目录下。

tsconfig.json 文件中主要通过以下字段来定义 tsc 命令的默认配置。

  • compilerOptions,编译配置,具体内容可参考 TypeScript 文档,React 项目创建时该部分内容已经预置无需修改。
  • files,配置需要编译的文件。
  • includes,使用通配符规则配置需要编译的文件。
  • excludes,使用通配符规则配置需要排除的文件。
  • compileOnSave,当被监视文件保存时编译项目。

其中 compilerOptions 中常用的配置项有以下这些。

配置项可取值功能
moduleNone, CommonJS, AMD, System, UMD, ES6, ES2015, ESNext使用哪种模块模式
moduleResolutionNode, Classic指定如何查找模块
noImplicityAnytrue, false禁止隐式使用 any 类型
strictNullCheckstrue, false强制检查空值
alwaysStricttrue, false使用使用严格模式
experimentalDecoratorstrue, false使用修饰器功能支持
removeCommentstrue, false编译时移除注释
resolveJsonModuletrue, false允许将 JSON 文件作为独立模块导入
sourceMaptrue, false指示是否生成代码地图
typeRoots字符串列表列举库的声明文件所在目录
types字符串列表列举要包含的库声明文件
jsxreact, react-native, preserve对 JSX 文件的解析方式
outDir字符串编译输出文件的存放位置
rootDir字符串编译输入文件的存放位置
rootDirs字符串列表编译输入文件的存放位置
baseUrl字符串设定项目根路径
path对象设定模块引入路径转换映射
targetES3, ES5, ES6, ES2015, ES2017, ES2018, ES2019, ES2020, ESNext编译输出的 JavaScript 目标版本
lib字符串列表,具体见 TypeScript 文档编译时要包含在输出文件中的核心库