Skip to content

编译选项

TypeScript 编译器提供了丰富的命令行编译选项(也称为编译器标志或编译器选项),用于控制编译过程的行为、输出格式、错误报告等。以下是一些常用的 TypeScript 编译选项及其说明:

基础选项

  1. :指定输出文件的路径。当使用此选项时,所有输入文件会被合并到单一的输出文件中。
  2. :指定 ECMAScript 目标版本。例如,es5, es6, es2015, es2016, es2017, es2018, es2019, es2020, es2021, esnext。
  3. :指定模块系统。常见的值有 commonjs, amd, system, umd, es2015, esnext。
  4. :生成源码映射文件,便于调试原始 TypeScript 源代码。
  5. :监视文件变化并自动重新编译。

严格性选项

  1. :启用所有严格的类型检查选项,包括 noImplicitAny, strictNullChecks, strictFunctionTypes, strictPropertyInitialization 和 strictBindCallApply。
  2. :禁止隐式的 any 类型推断,要求明确标注所有类型。
  3. :使 null 和 undefined 类型更加严格,不允许将它们赋值给非 null 或非 undefined 类型的变量。
  4. :启用对 ES 模块和 CommonJS 模块间的互操作性支持,例如,允许在导入时省略 .default。

输出和优化选项

  1. :生成对应的 .d.ts 声明文件。
  2. :指定 .d.ts 声明文件的输出目录。
  3. :从输出的 JavaScript 文件中移除所有注释。
  4. :指定如何处理 JSX 代码,如 react(默认),preserve 或 react-native。

其他常用选项

  1. :当使用多入口点或输出目录不匹配源目录结构时,用于指定源目录的根目录列表。
  2. :为非相对模块名提供基准目录。
  3. :指定模块路径别名,用于路径解析。
  4. :允许编译器编译 .js 文件,这对于逐步迁移现有 JavaScript 项目很有用。
  5. :启用每个文件作为单独模块的编译,即使没有明确的 import 或 export,这有助于发现潜在的类型错误。
  6. :抑制因索引签名引起的隐式 any 错误。

这些选项可以通过命令行直接传递给 tsc 编译器,也可以在 配置文件中进行设置,以更方便地管理整个项目的编译选项。tsconfig.json 是 TypeScript 项目的主要配置文件,包含了编译器的各种设置。

Released under the MIT License.