| --allowJs | boolean | false |
| 允许 JavaScript 文件成为程序的一部分。使用 checkJS 选项从这些文件中获取错误。 | | |
| --allowSyntheticDefaultImports | boolean | true 如果 module 是 system,或 esModuleInterop 且 module 不是 es6/es2015 或 esnext, false 否则。 |
| 当模块没有默认导出时允许 'import x from y'。 | | |
| --allowUmdGlobalAccess | boolean | false |
| 允许从模块访问 UMD 全局变量。 | | |
| --allowUnreachableCode | boolean | |
| 禁用无法访问代码的错误报告。 | | |
| --allowUnusedLabels | boolean | |
| 禁用未使用标签的错误报告。 | | |
| --alwaysStrict | boolean | true 如果 strict, false 否则。 |
| 确保始终发出 'use strict'。 | | |
| --assumeChangesOnlyAffectDirectDependencies | boolean | false |
| 在使用 incremental 和 watch 模式的项目中重新编译假定文件中的更改只会影响直接依赖于它的文件。 | | |
| --baseUrl | string | |
| 指定基目录以解析非相对模块名称。 | | |
| --charset | string | utf8 |
| 不再支持。在早期版本中,手动设置读取文件的文本编码。 | | |
| --checkJs | boolean | false |
| 在类型检查的 JavaScript 文件中启用错误报告。 | | |
| --composite | boolean | false |
| 启用允许 TypeScript 项目与项目引用一起使用的约束。 | | |
| --declaration | boolean | true 如果 composite, false 否则。 |
| 从项目中的 TypeScript 和 JavaScript 文件生成 .d.ts 文件。 | | |
| --declarationDir | string | |
| 指定生成的声明文件的输出目录。 | | |
| --declarationMap | boolean | false |
| 为 d.ts 文件创建源映射。 | | |
| --diagnostics | boolean | false |
| 构建后输出编译器性能信息。 | | |
| --disableReferencedProjectLoad | boolean | false |
| 减少 TypeScript 自动加载的项目数量。 | | |
| --disableSizeLimit | boolean | false |
| 取消 TypeScript 语言服务器中 JavaScript 文件总源代码大小的 20mb 上限。 | | |
| --disableSolutionSearching | boolean | false |
| 编辑时选择项目退出多项目参考检查。 | | |
| --disableSourceOfProjectReferenceRedirect | boolean | false |
| 引用复合项目时禁用首选源文件而不是声明文件。 | | |
| --downlevelIteration | boolean | false |
| 为迭代发出更合规但冗长且性能更低的 JavaScript。 | | |
| --emitBOM | boolean | false |
| 在输出文件的开头发出一个 UTF-8 字节顺序标记 (BOM)。 | | |
| --emitDeclarationOnly | boolean | false |
| 只输出 d.ts 文件,不输出 JavaScript 文件。 | | |
| --emitDecoratorMetadata | boolean | false |
| 为源文件中的修饰声明发出设计类型元数据。 | | |
| --esModuleInterop | boolean | false |
| 发出额外的 JavaScript 以简化对导入 CommonJS 模块的支持。这启用 allowSyntheticDefaultImports 以实现类型兼容性。 | | |
| --exactOptionalPropertyTypes | boolean | false |
| 将可选属性类型解释为书面形式,而不是添加 undefined。 | | |
| --experimentalDecorators | boolean | false |
| 启用对 TC39 第 2 阶段草稿装饰器的实验性支持。 | | |
| --explainFiles | boolean | false |
| 打印在编译期间读取的文件,包括包含它的原因。 | | |
| --extendedDiagnostics | boolean | false |
| 构建后输出更详细的编译器性能信息。 | | |
| --forceConsistentCasingInFileNames | boolean | false |
| 确保进口中的大小写正确。 | | |
| --generateCpuProfile | string | profile.cpuprofile |
| 发出编译器运行的 v8 CPU 配置文件以进行调试。 | | |
| --importHelpers | boolean | false |
| 允许每个项目从 tslib 导入帮助函数一次,而不是在每个文件中包含它们。 | | |
| --importsNotUsedAsValues | remove、preserve 或 error | remove |
| 为仅用于类型的导入指定发出/检查行为。 | | |
| --incremental | boolean | true 如果 composite, false 否则。 |
| 保存 .tsbuildinfo 文件以允许增量编译项目。 | | |
| --inlineSourceMap | boolean | false |
| 在发出的 JavaScript 中包含 sourcemap 文件。 | | |
| --inlineSources | boolean | false |
| 在发出的 JavaScript 内的源映射中包含源代码。 | | |
| --isolatedModules | boolean | false |
| 确保每个文件都可以安全地转译,而无需依赖其他导入。 | | |
| --jsx | preserve、react、react-native、react-jsx 或 react-jsxdev | |
| 指定生成的 JSX 代码。 | | |
| --jsxFactory | string | React.createElement |
| 指定针对 React JSX 触发时使用的 JSX 工厂函数,例如 'React.createElement' 或 'h'。 | | |
| --jsxFragmentFactory | string | React.Fragment |
| 指定针对 React JSX 触发时用于片段的 JSX 片段引用,例如 'React.Fragment' 或 'Fragment'。 | | |
| --jsxImportSource | string | react |
| 指定使用 jsx: react-jsx* 时用于导入 JSX 工厂函数的模块说明符。 | | |
| --keyofStringsOnly | boolean | false |
| 使 keyof 只返回字符串而不是字符串、数字或符号。旧版选项。 | | |
| --lib | list | |
| 指定一组描述目标运行时环境的捆绑库声明文件。 | | |
| --listEmittedFiles | boolean | false |
| 编译后打印发出文件的名称。 | | |
| --listFiles | boolean | false |
| 打印编译期间读取的所有文件。 | | |
| --mapRoot | string | |
| 指定调试器应该定位映射文件而不是生成的位置的位置。 | | |
| --maxNodeModuleJsDepth | number | 0 |
| 指定用于从 node_modules 检查 JavaScript 文件的最大文件夹深度。仅适用于 allowJs。 | | |
| --module | none、commonjs、amd、umd、system、es6/es2015、es2020、es2022、esnext、node16 或 nodenext | CommonJS 如果 target 是 ES3 或 ES5, ES6/ES2015 否则。 |
| 指定生成什么模块代码。 | | |
| --moduleDetection | legacy、auto 或 force | "auto":将具有导入、导出、import.meta、jsx(使用 jsx:react-jsx)或 esm 格式(使用模块:node16+)的文件视为模块。 |
| 控制使用什么方法来检测 JS 文件是否为模块。 | | |
| --moduleResolution | classic、node、node16 或 nodenext | Classic 如果 module 是 AMD、UMD、System 或 ES6/ES2015, 如果 module 是 node12 或 nodenext,则匹配, Node 否则。 |
| 指定 TypeScript 如何从给定的模块说明符中查找文件。 | | |
| --moduleSuffixes | list | |
| 解析模块时要搜索的文件名后缀列表。 | | |
| --newLine | crlf 或 lf | 特定于平台。 |
| 设置用于发出文件的换行符。 | | |
| --noEmit | boolean | false |
| 禁用从编译中发出文件。 | | |
| --noEmitHelpers | boolean | false |
| 禁止在编译输出中生成自定义帮助函数,如 __extends。 | | |
| --noEmitOnError | boolean | false |
| 如果报告任何类型检查错误,则禁用发出文件。 | | |
| --noErrorTruncation | boolean | false |
| 禁用错误消息中的截断类型。 | | |
| --noFallthroughCasesInSwitch | boolean | false |
| 在 switch 语句中启用失败案例的错误报告。 | | |
| --noImplicitAny | boolean | true 如果 strict, false 否则。 |
| 为隐含 any 类型的表达式和声明启用错误报告。 | | |
| --noImplicitOverride | boolean | false |
| 确保派生类中的覆盖成员使用覆盖修饰符进行标记。 | | |
| --noImplicitReturns | boolean | false |
| 为未在函数中显式返回的代码路径启用错误报告。 | | |
| --noImplicitThis | boolean | true 如果 strict, false 否则。 |
| 当 this 被赋予类型 any 时启用错误报告。 | | |
| --noImplicitUseStrict | boolean | false |
| 禁止在发出的 JavaScript 文件中添加 'use strict' 指令。 | | |
| --noLib | boolean | false |
| 禁用包含任何库文件,包括默认的 lib.d.ts。 | | |
| --noPropertyAccessFromIndexSignature | boolean | false |
| 对使用索引类型声明的键强制使用索引访问器。 | | |
| --noResolve | boolean | false |
| 禁止 imports、requires 或 <reference>s 扩展 TypeScript 应添加到项目中的文件数量。 | | |
| --noStrictGenericChecks | boolean | false |
| 禁用对函数类型中的泛型签名的严格检查。 | | |
| --noUncheckedIndexedAccess | boolean | false |
| 使用索引访问时将 undefined 添加到类型。 | | |
| --noUnusedLocals | boolean | false |
| 未读取局部变量时启用错误报告。 | | |
| --noUnusedParameters | boolean | false |
| 未读取函数参数时引发错误。 | | |
| --out | string | |
| 已弃用的设置。请改用 outFile。 | | |
| --outDir | string | |
| 为所有发出的文件指定一个输出文件夹。 | | |
| --outFile | string | |
| 指定将所有输出捆绑到一个 JavaScript 文件中的文件。如果 declaration 为真,则还指定一个捆绑所有 .d.ts 输出的文件。 | | |
| --paths | object | |
| 指定一组将导入重新映射到其他查找位置的条目。 | | |
| --plugins | list | |
| 指定要包含的语言服务插件列表。 | | |
| --preserveConstEnums | boolean | true 如果 isolatedModules, false 否则。 |
| 禁用擦除生成代码中的 const enum 声明。 | | |
| --preserveSymlinks | boolean | false |
| 禁用解析符号链接到他们的真实路径。这与 node 中的相同标志相关。 | | |
| --preserveValueImports | boolean | false |
| 在 JavaScript 输出中保留未使用的导入值,否则这些值将被删除。 | | |
| --preserveWatchOutput | boolean | false |
| 在手表模式下禁用擦除控制台。 | | |
| --pretty | boolean | true |
| 在 TypeScript 的输出中启用颜色和格式,以使编译器错误更易于阅读。 | | |
| --reactNamespace | string | React |
| 指定为 createElement 调用的对象。这仅适用于针对 react JSX 触发的情况。 | | |
| --removeComments | boolean | false |
| 禁用发出评论。 | | |
| --resolveJsonModule | boolean | false |
| 启用导入 .json 文件。 | | |
| --rootDir | string | 根据输入文件列表计算。 |
| 在源文件中指定根文件夹。 | | |
| --rootDirs | list | 根据输入文件列表计算。 |
| 解析模块时允许将多个文件夹视为一个。 | | |
| --skipDefaultLibCheck | boolean | false |
| 跳过 TypeScript 中包含的类型检查 .d.ts 文件。 | | |
| --skipLibCheck | boolean | false |
| 跳过类型检查所有 .d.ts 文件。 | | |
| --sourceMap | boolean | false |
| 为发出的 JavaScript 文件创建源映射文件。 | | |
| --sourceRoot | string | |
| 指定调试器查找参考源代码的根路径。 | | |
| --strict | boolean | false |
| 启用所有严格的类型检查选项。 | | |
| --strictBindCallApply | boolean | true 如果 strict, false 否则。 |
| 检查 bind、call 和 apply 方法的参数是否与原始函数匹配。 | | |
| --strictFunctionTypes | boolean | true 如果 strict, false 否则。 |
| 分配函数时,检查以确保参数和返回值是子类型兼容的。 | | |
| --strictNullChecks | boolean | true 如果 strict, false 否则。 |
| 类型检查时,请考虑 null 和 undefined。 | | |
| --strictPropertyInitialization | boolean | true 如果 strict, false 否则。 |
| 检查已声明但未在构造函数中设置的类属性。 | | |
| --stripInternal | boolean | false |
| 禁用在 JSDoc 注释中发出 @internal 的声明。 | | |
| --suppressExcessPropertyErrors | boolean | false |
| 在创建对象字面期间禁用过多属性错误的报告。 | | |
| --suppressImplicitAnyIndexErrors | boolean | false |
| 在索引缺少索引签名的对象时抑制 noImplicitAny 错误。 | | |
| --target | es3、es5、es6/es2015、es2016、es2017、es2018、es2019、es2020、es2021、es2022 或 esnext | ES3 |
| 为发出的 JavaScript 设置 JavaScript 语言版本并包含兼容的库声明。 | | |
| --traceResolution | boolean | false |
| moduleResolution 过程中使用的日志路径。 | | |
| --tsBuildInfoFile | string | .tsbuildinfo |
| 指定 .tsbuildinfo 增量编译文件的文件夹。 | | |
| --typeRoots | list | |
| 指定多个类似于 ./node_modules/@types 的文件夹。 | | |
| --types | list | |
| 指定要包含的类型包名称,而不在源文件中引用。 | | |
| --useDefineForClassFields | boolean | true 如果 target 是 ES2022 或更高,包括 ESNext, false 否则。 |
| 发出符合 ECMAScript 标准的类字段。 | | |
| --useUnknownInCatchVariables | boolean | true 如果 strict, false 否则。 |
| 默认的 catch 子句变量为 unknown 而不是 any。 | | |