TypeScript 编译选项

发布于 2021-09-03 21:31:58 字数 6568 浏览 1603 评论 0

选项简写描述
--declaration-d生成对应的 '.d.ts' 文件.
--help-h打印帮助信息.
--version-v打印编译器版本.
--module-m指定模块代码生成: 'commonjs', 'amd', 'system', 'umd', 或者 'es2015'. 只有 'amd' 和 'system' 可以和 --outFile 一起使用. 当便以目标为 ES5 或者更低时不能使用值 'es2015'.
--project-p编译给定目录中的项目. 该目录中需要有一个 tsconfig.json 文件用于直接编译. 参考 tsconfig.json 文档了解更多.
--target-t指定 ECMAScript 目标版本: 'ES3' (默认), 'ES5', or 'ES6'[1]
--watch-w使用监听模式执行编译. 监视输入文件并在发生变化时触发重新编译.
--charset输入文件的字符集.
--diagnostics输出诊断信息.
--emitBOM在输出文件的开头添加 UTF-8 字节顺序标记 (BOM).
--emitDecoratorMetadata[1]为被源码中被装饰的声明输出设计类型元数据. 见 issue #2577 了解详情.
--experimentalDecorators启用对 ES7 装饰器的试验性支持.
--inlineSourceMap将 source map 包含在输出文件中, 而不输出单独的文件.
--inlineSources将源代码和 source map 输出到同一个文件中. 需要 --inlineSourceMap--sourceMap 被启用.
--isolatedModules对于未解析的文件无条件输出导入项.
--jsx支持 '.tsx' 文件中的 JSX: 'React' 或 'Preserve'. 参考 JSX.
--reactNamespace指定使用 'react' 作为 JSX 输出设置时用于调用 createElement__spread 的对象.
--listFiles输出编译时的文件部分名称.
--locale错误信息的地域, 比如 en-us.
--mapRoot指定调试器定位 map 文件的位置, 而不使用生成代码的位置. 当运行时 .map 文件和对应的 .js 文件不在同一位置时需要指定该位置. 指定的位置会被内嵌到 source map 中告诉调试器 map 文件所在的位置.
--moduleResolution决定模块被解析的方式. 可以是用于 Node.js/io.js 解析风格风格的 'node', 或者 'classic' (默认).
--newLine输出文件时使用指定的换行符: 'CRLF' (dos) 或 'LF' (unix).
--noEmit不进行文件输出.
--noEmitOnError在有任何错误时都不输出文件.
--noEmitHelpers不在编译结果中生成自定义的像 __extends 的辅助函数.
--noImplicitAny在表达式或者声明包含隐式的 'any' 类型是报错.
--noLib不引入默认的库文件 (lib.d.ts).
--noResolve在被编译的文件列表中不列出由三斜线引用的和导入的目标文件.
--skipDefaultLibCheck跳过默认库文件检查.
--out已弃用. 请使用 --outFile 代替.
--outDir将文件输出到指定文件夹.
--outFile将输出内容合并为单个文件. 合并的顺序由在命令行中传给编译器的列表与三斜线引用及导入决定. 查看输出文件顺序文档了解更多.
--preserveConstEnums在生成的代码中保留常量枚举声明. 查看常量枚举文档 了解更多.
--pretty[1]使用颜色和上下文丰富报错和信息.
--removeComments移除除以 /*! 开头的版权头信息以外的所有注释.
--rootDir指定输入文件的根目录. 仅用于和 --outDir 一起控制输出文件的目录结构.
--sourceMap生成对应的 '.map' 文件.
--sourceRoot指定 debugger 定位 TypeScript 文件的位置 (而不是源文件地址). 当源文件在运行时与设计时在不同位置时可以使用此选项. 指定的位置将被嵌入 source map 来告知 debugger 去哪里寻找这些文件.
--stripInternal[1]不输出有 /** @internal */ JSDoc 标注代码的声明.
--suppressExcessPropertyErrors[1]不检查对象字面量多余的属性.
--suppressImplicitAnyIndexErrors忽略没有索引签名对象的 --noImplicitAny 错误. 见 issue #1232 了解更多.
--allowUnusedLabels不对未使用的标签报错.
--noImplicitReturns当函数中有代码路径没有返回值时报错.
--noFallthroughCasesInSwitch对 switch 语句中贯穿的 case 报错.
--allowUnreachableCode不对无法到达的语句报错.
--forceConsistentCasingInFileNames禁止对同一个文件大小写不一致的引用.
--allowSyntheticDefaultImports允许对没有默认输出的模块进行默认导入. 这不会影响代码输出, 仅用于进行类型检查.
--allowJs允许编译 JavaScript 文件.
--noImplicitUseStrict在输出的模块中不增加 "use strict" 指令.

[1] 这些选项是试验性的.

相关信息

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文