MSBuild编译选项
编辑教程MSBuild编译选项
在MSBuild里使用编译选项
概述
编译选项可以在使用MSBuild的项目里通过MSBuild属性指定。
例子
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptRemoveComments>false</TypeScriptRemoveComments>
<TypeScriptSourceMap>true</TypeScriptSourceMap>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptRemoveComments>true</TypeScriptRemoveComments>
<TypeScriptSourceMap>false</TypeScriptSourceMap>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
映射
| 编译选项 | MSBuild属性名称 | 可用值 |
|---|---|---|
| --declaration | TypeScriptGeneratesDeclarations | 布尔值 |
| --module | TypeScriptModuleKind | AMD, CommonJs, UMD 或 System |
| --target | TypeScriptTarget | ES3, ES5, or ES6 |
| --charset | TypeScriptCharset | |
| --emitBOM | TypeScriptEmitBOM | 布尔值 |
| --emitDecoratorMetadata | TypeScriptEmitDecoratorMetadata | 布尔值 |
| --experimentalDecorators | TypeScriptExperimentalDecorators | 布尔值 |
| --inlineSourceMap | TypeScriptInlineSourceMap | 布尔值 |
| --inlineSources | TypeScriptInlineSources | 布尔值 |
| --locale | 自动的 | 自动设置成PreferredUILang的值 |
| --mapRoot | TypeScriptMapRoot | 文件路径 |
| --newLine | TypeScriptNewLine | CRLF 或 LF |
| --noEmitOnError | TypeScriptNoEmitOnError | 布尔值 |
| --noEmitHelpers | TypeScriptNoEmitHelpers | 布尔值 |
| --noImplicitAny | TypeScriptNoImplicitAny | 布尔值 |
| --noUnusedLocals | TypeScriptNoUnusedLocals | 布尔值 |
| --noUnusedParameters | TypeScriptNoUnusedParameters | 布尔值 |
| --noLib | TypeScriptNoLib | 布尔值 |
| --noResolve | TypeScriptNoResolve | 布尔值 |
| --out | TypeScriptOutFile | 文件路径 |
| --outDir | TypeScriptOutDir | 文件路径 |
| --preserveConstEnums | TypeScriptPreserveConstEnums | 布尔值 |
| --removeComments | TypeScriptRemoveComments | 布尔值 |
| --rootDir | TypeScriptRootDir | 文件路径 |
| --isolatedModules | TypeScriptIsolatedModules | 布尔值 |
| --sourceMap | TypeScriptSourceMap | 文件路径 |
| --sourceRoot | TypeScriptSourceRoot | 文件路径 |
| --strictNullChecks | TypeScriptStrictNullChecks | 布尔值 |
| --suppressImplicitAnyIndexErrors | TypeScriptSuppressImplicitAnyIndexErrors | 布尔值 |
| --suppressExcessPropertyErrors | TypeScriptSuppressExcessPropertyErrors | 布尔值 |
| --moduleResolution | TypeScriptModuleResolution | Classic or Node |
| --experimentalAsyncFunctions | TypeScriptExperimentalAsyncFunctions | 布尔值 |
| --jsx | TypeScriptJSXEmit | React or Preserve |
| --reactNamespace | TypeScriptReactNamespace | string |
| --skipDefaultLibCheck | TypeScriptSkipDefaultLibCheck | 布尔值 |
| --allowUnusedLabels | TypeScriptAllowUnusedLabels | 布尔值 |
| --noImplicitReturns | TypeScriptNoImplicitReturns | 布尔值 |
| --noFallthroughCasesInSwitch | TypeScriptNoFallthroughCasesInSwitch | 布尔值 |
| --allowUnreachableCode | TypeScriptAllowUnreachableCode | 布尔值 |
| --forceConsistentCasingInFileNames | TypeScriptForceConsistentCasingInFileNames | 布尔值 |
| --allowSyntheticDefaultImports | TypeScriptAllowSyntheticDefaultImports | 布尔值 |
| --noImplicitUseStrict | TypeScriptNoImplicitUseStrict | 布尔值 |
| --project | VS不支持 | |
| --watch | VS不支持 | |
| --diagnostics | VS不支持 | |
| --listFiles | VS不支持 | |
| --noEmit | VS不支持 | |
| --allowJs | VS不支持 |
VS特有选项 TypeScriptAdditionalFlags 任意编译选项
Visual Studio版本里支持哪些选项?
查找 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets文件。 可用的MSBuild XML标签与相应的tsc编译选项的映射都在那里。
ToolsVersion
工程文件里的<TypeScriptToolsVersion>1.7</TypeScriptToolsVersion>属性值表明了构建时使用的编译器的版本号(这个例子里是1.7) 这样就允许一个工程在不同的机器上使用固定的版本去编译。
如果没有指定TypeScriptToolsVersion,则会使用机器上安装的最新版本的编译器去构建。
如果用户使用的是更新版本的TypeScript,则会在首次加载工程的时候看到一个提示升级工程的对话框。
TypeScriptCompileBlocked
如果你使用其它的构建工具(比如,gulp, grunt等等)并且使用VS做为开发和调试工具
那么在工程里设置<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>。 这样VS只会提供给你编辑的功能,而不会在你按F5的时候去构建。
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付

¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟