Skip to content

Commit d664820

Browse files
committed
Update pages on compiler options. PR194
1 parent 3eca96f commit d664820

File tree

3 files changed

+36
-7
lines changed

3 files changed

+36
-7
lines changed

doc/handbook/Compiler Options in MSBuild.md

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,42 @@
4848
`--sourceRoot` | TypeScriptSourceRoot | 文件路径
4949
`--suppressImplicitAnyIndexErrors` | TypeScriptSuppressImplicitAnyIndexErrors | 布尔值
5050
`--suppressExcessPropertyErrors` | TypeScriptSuppressExcessPropertyErrors | 布尔值
51-
`--moduleResolution` | TypeScriptModuleResolution | `Classic` or `NodeJs`
51+
`--moduleResolution` | TypeScriptModuleResolution | `Classic` or `Node`
52+
`--experimentalAsyncFunctions` | TypeScriptExperimentalAsyncFunctions | 布尔值
5253
`--jsx` | TypeScriptJSXEmit | `React` or `Preserve`
54+
`--reactNamespace` | TypeScriptReactNamespace | string
55+
`--skipDefaultLibCheck` | TypeScriptSkipDefaultLibCheck | 布尔值
56+
`--allowUnusedLabels` | TypeScriptAllowUnusedLabels | 布尔值
57+
`--noImplicitReturns` | TypeScriptNoImplicitReturns | 布尔值
58+
`--noFallthroughCasesInSwitch` | TypeScriptNoFallthroughCasesInSwitch | 布尔值
59+
`--allowUnreachableCode` | TypeScriptAllowUnreachableCode | 布尔值
60+
`--forceConsistentCasingInFileNames` | TypeScriptForceConsistentCasingInFileNames | 布尔值
61+
`--allowSyntheticDefaultImports` | TypeScriptAllowSyntheticDefaultImports | 布尔值
62+
`--noImplicitUseStrict` | TypeScriptNoImplicitUseStrict | 布尔值
5363
`--project` | *VS不支持* |
5464
`--watch` | *VS不支持* |
5565
`--diagnostics` | *VS不支持* |
5666
`--listFiles` | *VS不支持* |
5767
`--noEmit` | *VS不支持* |
68+
`--allowJs` | *VS不支持* |
5869
*VS特有选项* | TypeScriptAdditionalFlags | *任意编译选项*
5970

6071

61-
## 我使用的Visual Studio版本里支持哪些选项
72+
## 我使用的Visual Studio版本里支持哪些选项?
6273

6374
查找 `C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets` 文件。
64-
可用的MSBuild XML标签与相应的`tsc`编译选项的映射都在那里。
75+
可用的MSBuild XML标签与相应的`tsc`编译选项的映射都在那里。
76+
77+
## ToolsVersion
78+
79+
工程文件里的`<TypeScriptToolsVersion>1.7</TypeScriptToolsVersion>`属性值表明了构建时使用的编译器的版本号(这个例子里是1.7)
80+
这样就允许一个工程在不同的机器上使用固定的版本去编译。
81+
82+
如果没有指定`TypeScriptToolsVersion`,则会使用机器上安装的最新版本的编译器去构建。
83+
84+
如果用户使用的是更新版本的TypeScript,则会在首次加载工程的时候看到一个提示升级工程的对话框。
85+
86+
## TypeScriptCompileBlocked
87+
88+
如果你使用其它的构建工具(比如,gulp, grunt等等)并且使用VS做为开发和调试工具,那么在工程里设置`<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>`
89+
这样VS只会提供给你编辑的功能,而不会在你按F5的时候去构建。

doc/handbook/Compiler Options.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
`--declaration` | `-d` | 生成相应的'.d.ts'文件。
66
`--help` | `-h` | 打印帮助信息。
77
`--version` | `-v` | 打印编译器版本号。
8-
`--module` | `-m` | 指定生成哪个模块系统代码:'commonjs','amd','system',或 'umd'。只有'amd'和'system'能和`--outFile`一起使用。
8+
`--module` | `-m` | 指定生成哪个模块系统代码:'commonjs','amd','system',或 'umd'或'es2015'。只有'amd'和'system'能和`--outFile`一起使用。当目标是ES5或以下的时候不能使用'es2015'
99
`--project` | `-p` | 编译指定目录下的项目。这个目录应该包含一个`tsconfig.json`文件来管理编译。查看[tsconfig.json](./tsconfig.json.md)文档了解更多信息。
1010
`--target` | `-t` | 指定ECMAScript目标版本'ES3' (默认),'ES5',或'ES6'<sup>[1]</sup>
1111
`--watch` | `-w` | 在监视模式下运行编译器。会监视输出文件,在它们改变时重新编译。
@@ -14,9 +14,10 @@
1414
`--emitBOM` | | 在输出文件的开头加入BOM头(UTF-8 Byte Order Mark)。
1515
`--emitDecoratorMetadata`<sup>[1]</sup> | | 给源码里的装饰器声明加上设计类型元数据。查看[issue #2577](https://github.com/Microsoft/TypeScript/issues/2577)了解更多信息。
1616
`--inlineSourceMap` | | 生成单个sourcemaps文件,而不是将每sourcemaps生成不同的文件。
17-
`--inlineSources` | | 将代码与sourcemaps生成到一个文件中,要求同时设置了`--inlineSourceMap`属性。
17+
`--inlineSources` | | 将代码与sourcemaps生成到一个文件中,要求同时设置了`--inlineSourceMap``--sourceMap`属性。
1818
`--isolatedModules` | | 无条件地给没有解析的文件生成imports。
1919
`--jsx` | | 在'.tsx'文件里支持JSX:'React' 或 'Preserve'。查看[JSX](./JSX.md)
20+
`--reactNamespace` | | 当目标为生成'react' JSX时,指定`createElement``__spread`的调用对象
2021
`--listFiles` | | 编译过程中打印文件名。
2122
`--locale` | | 显示错误信息时使用的语言,比如:en-us。
2223
`--mapRoot` | | 为调试器指定指定sourcemap文件的路径,而不是使用生成时的路径。当`.map`文件是在运行时指定的,并不同于`js`文件的地址时使用这个标记。指定的路径会嵌入到`sourceMap`里告诉调试器到哪里去找它们。
@@ -28,15 +29,18 @@
2829
`--noImplicitAny` | | 在表达式和声明上有隐含的'any'类型时报错。
2930
`--noLib` | | 不包含默认的库文件(lib.d.ts)。
3031
`--noResolve` | | 不把`/// <reference``>`或模块导入的文件加到编译文件列表。
32+
`--skipDefaultLibCheck` | |
3133
`--out` | | 弃用。使用 `--outFile` 代替。
3234
`--outDir` | | 重定向输出目录。
3335
`--outFile` | | 将输出文件合并为一个文件。合并的顺序是根据传入编译器的文件顺序和`///<reference``>``import`的文件顺序决定的。查看输出文件顺序文件了解详情。
3436
`--preserveConstEnums` | | 保留`const``enum`声明。查看[const enums documentation](https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#94-constant-enum-declarations)了解详情。
35-
`--removeComments` | | 删除所有注释,除了以`/!*`开头的版权信息
37+
`--pretty`<sup>[1]</sup> | | 给错误和消息设置样式,使用颜色和上下文。
38+
`--removeComments` | | 删除所有注释,除了以`/!*`开头的版权信息。
3639
`--rootDir` | | 仅用来控制输出的目录结构`--outDir`
3740
`--sourceMap` | | 生成相应的'.map'文件。
3841
`--sourceRoot` | | 指定TypeScript源文件的路径,以便调试器定位。当TypeScript文件的位置是在运行时指定时使用此标记。路径信息会被加到`sourceMap`里。
3942
`--stripInternal`<sup>[1]</sup> | | 不对具有`/** @internal */` JSDoc注解的代码生成代码。
43+
`--suppressExcessPropertyErrors`<sup>[1]</sup> | | 阻止对对象字面量的额外属性检查。
4044
`--suppressImplicitAnyIndexErrors` | | 阻止`--noImplicitAny`对缺少索引签名的索引对象报错。查看[issue #1232](https://github.com/Microsoft/TypeScript/issues/1232#issuecomment-64510362)了解详情。
4145

4246
<sup>[1]</sup> 这些选项是试验性的。

lint.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ var options = {
2727
MD023: true, // Headers must start at the beginning of the line
2828
MD024: false, // Multiple headers with the same content
2929
MD025: false, // Multiple top level headers in the same document
30-
MD026: { punctuation: ".,;:!?" }, // Trailing punctuation in header
30+
MD026: { punctuation: ".,;:!" }, // Trailing punctuation in header
3131
MD027: true, // Multiple spaces after blockquote symbol
3232
MD028: false, // Blank line inside blockquote
3333
MD029: { style: "ordered" }, // Ordered list item prefix

0 commit comments

Comments
 (0)