编译选项

选项 类型 默认值 描述
--allowJs boolean false 允许编译javascript文件。
--allowSyntheticDefaultImports boolean module === "system" 允许从没有设置默认导出的模块中默认导入。这并不影响代码的显示,仅为了类型检查。
--allowUnreachableCode boolean false 不报告执行不到的代码错误。
--allowUnusedLabels boolean false 不报告未使用的标签错误。
--alwaysStrict boolean false 以严格模式解析并为每个源文件生成"use strict"语句
--baseUrl string   解析非相对模块名的基准目录。查看模块解析文档了解详情。
--charset string "utf8" 输入文件的字符集。
--checkJs boolean false .js文件中报告错误。与--allowJs配合使用。
--declaration
-d
boolean false 生成相应的.d.ts文件。
--declarationDir string   生成声明文件的输出路径。
--diagnostics boolean false 显示诊断信息。
--disableSizeLimit boolean false 禁用JavaScript工程体积大小的限制
--emitBOM boolean false 在输出文件的开头加入BOM头(UTF-8 Byte Order Mark)。
--emitDecoratorMetadata[1] boolean false 给源码里的装饰器声明加上设计类型元数据。查看issue #2577了解更多信息。
--experimentalDecorators[1] boolean false 启用实验性的ES装饰器。
--forceConsistentCasingInFileNames boolean false 禁止对同一个文件的不一致的引用。
--help
-h
    打印帮助信息。
--importHelpers string   tslib导入辅助工具函数(比如__extends__rest等)
--inlineSourceMap boolean false 生成单个sourcemaps文件,而不是将每sourcemaps生成不同的文件。
--inlineSources boolean false 将代码与sourcemaps生成到一个文件中,要求同时设置了--inlineSourceMap--sourceMap属性。
--init     初始化TypeScript项目并创建一个tsconfig.json文件。
--isolatedModules boolean false 将每个文件作为单独的模块(与“ts.transpileModule”类似)。
--jsx string "Preserve" .tsx文件里支持JSX:"React""Preserve"。查看
JSX
--jsxFactory string "React.createElement" 指定生成目标为react JSX时,使用的JSX工厂函数,比如React.createElementh
--lib string[]   编译过程中需要引入的库文件的列表。
可能的值为:
ES5
ES6
ES2015
ES7
ES2016
ES2017
DOM
DOM.Iterable
WebWorker
ScriptHost
ES2015.Core
ES2015.Collection
ES2015.Generator
ES2015.Iterable
ES2015.Promise
ES2015.Proxy
ES2015.Reflect
ES2015.Symbol
ES2015.Symbol.WellKnown
ES2016.Array.Include
ES2017.object
ES2017.SharedMemory

注意:如果--lib没有指定一个默认注入的库。默认注入的库为:
► 针对于--target ES5DOM,ES5,ScriptHost
► 针对于--target ES6DOM,ES6,DOM.Iterable,ScriptHost

--listEmittedFiles boolean false 打印出编译后生成文件的名字。
--listFiles boolean false 编译过程中打印文件名。
--locale string (platform specific) 显示错误信息时使用的语言,比如:en-us。
--mapRoot string   为调试器指定指定sourcemap文件的路径,而不是使用生成时的路径。当.map文件是在运行时指定的,并不同于js文件的地址时使用这个标记。指定的路径会嵌入到sourceMap里告诉调试器到哪里去找它们。
--maxNodeModuleJsDepth number 0 node_modules依赖的最大搜索深度并加载JavaScript文件。仅适用于--allowJs
--module
-m
string target === "ES6" ? "ES6" : "commonjs" 指定生成哪个模块系统代码:"None""CommonJS""AMD""System""UMD""ES6""ES2015"

只有
"AMD""System"能和--outFile一起使用。

"ES6""ES2015"可使用在目标输出为"ES5"或更低的情况下。
--moduleResolution string module === "AMD" | "System" | "ES6" ? "Classic" : "Node" 决定如何处理模块。或者是"Node"对于Node.js/io.js,或者是"Classic"(默认)。查看模块解析了解详情。
--newLine string (platform specific) 当生成文件时指定行结束符:"crlf"(windows)或"lf"(unix)。
--noEmit boolean false 不生成输出文件。
--noEmitHelpers boolean false 不在输出文件中生成用户自定义的帮助函数代码,如__extends
--noEmitOnError boolean false 报错时不生成输出文件。
--noFallthroughCasesInSwitch boolean false 报告switch语句的fallthrough错误。(即,不允许switch的case语句贯穿)
--noImplicitAny boolean false 在表达式和声明上有隐含的any类型时报错。
--noImplicitReturns boolean false 不是函数的所有返回路径都有返回值时报错。
--noImplicitThis boolean false this表达式的值为any类型的时候,生成一个错误。
--noImplicitUseStrict boolean false 模块输出中不包含"use strict"指令。
--noLib boolean false 不包含默认的库文件(lib.d.ts)。
--noResolve boolean false 不把/// <reference``>或模块导入的文件加到编译文件列表。
--noUnusedLocals boolean false 若有未使用的局部变量则抛错。
--noUnusedParameters boolean false 若有未使用的参数则抛错。

--out
string   弃用。使用 --outFile 代替。
--outDir string   重定向输出目录。
--outFile string   将输出文件合并为一个文件。合并的顺序是根据传入编译器的文件顺序和///<reference``>import的文件顺序决定的。查看输出文件顺序文件了解详情。
paths[2] Object   模块名到基于baseUrl的路径映射的列表。查看模块解析文档了解详情。
--preserveConstEnums boolean false 保留constenum声明。查看const enums documentation了解详情。
--pretty[1] boolean false 给错误和消息设置样式,使用颜色和上下文。
--project
-p
string   编译指定目录下的项目。这个目录应该包含一个tsconfig.json文件来管理编译。查看tsconfig.json文档了解更多信息。
--reactNamespace string "React" 当目标为生成"react" JSX时,指定createElement__spread的调用对象
--removeComments boolean false 删除所有注释,除了以/!*开头的版权信息。
--rootDir string (common root directory is computed from the list of input files) 仅用来控制输出的目录结构--outDir
rootDirs[2] string[]   根(root)文件夹列表,表示运行时组合工程结构的内容。查看模块解析文档了解详情。
--skipDefaultLibCheck boolean false 忽略库的默认声明文件的类型检查。
--skipLibCheck boolean false 忽略所有的声明文件(*.d.ts)的类型检查。
--sourceMap boolean false 生成相应的.map文件。
--sourceRoot string   指定TypeScript源文件的路径,以便调试器定位。当TypeScript文件的位置是在运行时指定时使用此标记。路径信息会被加到sourceMap里。
--strict boolean false 启用所有严格类型检查选项。
启用--strict相当于启用--noImplicitAny,
--noImplicitThis, --alwaysStrict--strictNullChecks
--strictNullChecks boolean false 在严格的null检查模式下,nullundefined值不包含在任何类型里,只允许用它们自己和any来赋值(有个例外,undefined可以赋值到void)。
--stripInternal[1] boolean false 不对具有/** @internal */ JSDoc注解的代码生成代码。
--suppressExcessPropertyErrors[1] boolean false 阻止对对象字面量的额外属性检查。
--suppressImplicitAnyIndexErrors boolean false 阻止--noImplicitAny对缺少索引签名的索引对象报错。查看issue #1232了解详情。
--target
-t
string "ES3" 指定ECMAScript目标版本"ES3"(默认),"ES5""ES6"/"ES2015""ES2016""ES2017""ESNext"

注意:"ESNext"最新的生成目标列表为ES proposed features

--traceResolution boolean false 生成模块解析日志信息
--types string[]   要包含的类型声明文件名列表。查看@types,--typeRoots和--types章节了解详细信息。
--typeRoots string[]   要包含的类型声明文件路径列表。查看@types,--typeRoots和--types章节了解详细信息。
--version
-v
    打印编译器版本号。
--watch
-w
    在监视模式下运行编译器。会监视输出文件,在它们改变时重新编译。
  • [1] 这些选项是试验性的。
  • [2] 这些选项只能在tsconfig.json里使用,不能在命令行使用。

相关信息

TypeScript 编译选项的更多相关文章

  1. 转职成为TypeScript程序员的参考手册

    写在前面 作者并没有任何可以作为背书的履历来证明自己写作这份手册的分量. 其内容大都来自于TypeScript官方资料或者搜索引擎获得,期间掺杂少量作者的私见,并会标明. 大部分内容来自于http:/ ...

  2. TypeScript 零基础入门

    前言 2015 年末看过一篇文章<ES2015 & babel 实战:开发 npm 模块>,那时刚接触 ES6 不久,发觉新的 ES6 语法大大简化了 JavaScript 程序的 ...

  3. angularjs2 学习笔记(一) 开发环境搭建

    开发环境,vs2013 update 5,win7 x64,目前最新angular2版本为beta 17 第一步:安装node.js 安装node.js(https://nodejs.org/en/) ...

  4. NodeJS (npm) 学习笔记

    零, npm是nodeJS的包管理器,下载nodeJS后会自动安装好npm. 一,windows下安装 nodeJS并配置(以及angular安装相关问题) 1, 下载安装 https://nodej ...

  5. Angularjs2 学习笔记

    angularjs2 学习笔记(一) 开发环境搭建   开发环境,vs2013 update 5,win7 x64,目前最新angular2版本为beta 17 第一步:安装node.js 安装nod ...

  6. Angular 从入坑到挖坑 - Angular 使用入门

    一.Overview angular 入坑记录的笔记第一篇,完成开发环境的搭建,以及如何通过 angular cli 来创建第一个 angular 应用.入坑一个多星期,通过学习官方文档以及手摸手的按 ...

  7. Webstorm编译TypeScript

    下载webstorm 下载node.js编译器npm   Webstorm的安装很简单.但如果没有Java For Mac 环境打开Webstorm时会有提示,点击提示会跳转下载链接,下载安装就好. ...

  8. CSS3与页面布局学习总结(七)——前端预处理技术(Less、Sass、CoffeeScript、TypeScript)

    CSS不像其它高级语言一样支持算术运算.变量.流程控制与面向对象特性,所以CSS样式较多时会引起一些问题,如修改复杂,冗余,某些别的语言很简单的功能实现不了等.而javascript则是一种半面向对象 ...

  9. CSS3与页面布局学习笔记(七)——前端预处理技术(Less、Sass、CoffeeScript、TypeScript)

    CSS不像其它高级语言一样支持算术运算.变量.流程控制与面向对象特性,所以CSS样式较多时会引起一些问题,如修改复杂,冗余,某些别的语言很简单的功能实现不了等.而javascript则是一种半面向对象 ...

随机推荐

  1. 白白的(baibaide)——树状数组套主席树+splay

    题目 [题目描述] 有一个长度为 $n$ 的序列 $a_1, a_2, \dots, a_n$,一开始每个位置都是白色.如果一个区间中每个位置都是白色,则称这是一个白白的区间.如果一个白白的区间向左或 ...

  2. centos 7.X关闭防火墙和selinux

    一.关闭防火墙 centos从7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务是没安装的. 所以你只要停止firewalld服 ...

  3. Shell操作相关的快捷键 --Linux

    一.shell和bash shell --unix --Bourne shell ,bash --linux --Bourne again shell.bash (GNU Bourne-Again S ...

  4. maven包依赖问题排除

    今天新引入一个包后,运行报如下错误: Exception in thread "main" java.lang.NoClassDefFoundError: scala/Produc ...

  5. Start and Stop Bitbucket Server

    Starting and stopping Bitbucket Server This page describes the various ways you can start or stop Bi ...

  6. 主键约束 primary key

    主键的作用: 可以唯一标识 一条数据,每张表里面只能有一个主键,.主键特性: 非空且唯一.当表里没有主键的时,第一个出现的非空且为唯一的列,被当成主键. 例子:create table tb3(    ...

  7. C# 高级编程语言

    高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系.这种指令集,称机器码(machine code),是电脑 ...

  8. MVC中 Remote的用法

    一.web.config加入  <appSettings>    <add key="ClientValidationEnabled" value="t ...

  9. DockerSwarm 微服务部署

    一.简介 之前<服务Docker化>中,使用 docker-compose.yml 来一次配置启动多个容器,在 Swarm 集群中也可以使用 compose 文件 (docker-comp ...

  10. 使用SpringSession管理分布式会话时遇到的反序列化问题

    关于SpringSession相关的介绍和使用指南,可移步如下网址: [SpringSession管理分布式系统的会话Session] https://www.cnblogs.com/captaina ...