tsconfig.json 中有哪些重用的配置项【热度: 289】

关键词:TS 配置项

tsconfig.json是 TypeScript 项目的配置文件,它指定了用于编译该项目的根文件及编译器选项。以下是一些重要的配置项和它们的作用:

compilerOptions

这部分包含了一系列用来告诉 TypeScript 编译器如何编译代码的标志。

  • target: 设置编译后的 JavaScript 目标版本,比如"ES5""ES6"等。
  • module: 指定生成的代码所使用的模块系统,如"CommonJS""AMD""System""UMD""ES6""ES2015"等。
  • lib: 指定编译过程中需要包含的库文件的列表,如["dom", "es6"]等。
  • outDir: 指定输出目录,编译后的文件将放在这个目录下。
  • outFile: 将所有文件输出到一个文件中,仅在module"system""amd"时有效。
  • rootDir: 指定输入文件的根目录,用于控制输出目录结构。
  • allowJs: 允许编译.js文件,让 TypeScript 和 JavaScript 代码可以共存。
  • checkJs: 允许在.js文件中报告错误。
  • jsx: 在.tsx文件中支持 JSX,例如:"react"、"preserve"等。
  • declaration: 生成相应的.d.ts文件。
  • sourceMap: 生成相应的.map文件,用于调试。
  • strict: 启用所有严格类型检查选项。
  • noImplicitAny: 不允许具有隐式any类型的表达式和声明。
  • strictNullChecks: 在严格的null检查模式下,nullundefined值不包含在任何类型里,只允许用作它们各自的类型使用。
  • esModuleInterop: 通过为所有导入创建命名空间对象,实现 CommonJS 和 ES 模块之间的互操作性。

filesincludeexclude

这三个配置项控制 TypeScript 编译器应该编译哪些文件:

  • files: 指定一个确切的文件列表,只有这些文件会被编译。
  • include: 指定一个匹配模式列表,编译器会编译匹配上的文件。
  • exclude: 指定一个匹配模式列表以排除某些文件。

示例tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "strict": true,
    "jsx": "react",
    "outDir": "./dist",
    "esModuleInterop": true,
    "sourceMap": true,
    "allowJs": true,
    "skipLibCheck": true
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "**/*.spec.ts"]
}

这只是tsconfig.json中常用配置项的概览。根据项目的不同需求,可能会有更多的配置项需要了解和调整。通过适当配置tsconfig.json文件,可以有效控制 TypeScript 项目的编译过程。