javascript – 使用get set“退出代码1”编译TypeScript错误代码

get topLeft()      { return this._topLeft;             }

set topLeft(value) {  this._topLeft = value; Recalc(); }

以上代码可以在TypeScript Play中找到,但是我收到build错误
当从Visual Studio 2012编译错误“退出与代码1”

有没有人尝试获取,设置在TypeScript并构建成功?

最佳答案
您需要定位ECMAScript v5,即将-target ES5参数传递给编译器.这需要在项目文件目标配置中设置.

我不知道VS是否有任何内置的机制来编辑目标配置,所以我只能告诉你如何手动.只需打开.csproj项目文件,查找TypeScript编译器命令所在的目标节点,并添加-target ES5参数.

在我的配置中,它看起来像这样:

<Target Name="BeforeBuild">
    <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; -target ES5 @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

更新

从版本0.8.1.0开始,删除了硬编码版本依赖关系,并添加了源地图的支持,因此目标节点默认情况下看起来像这样:

<Target Name="BeforeBuild">
    <Message Text="Compiling TypeScript files" />
    <Message Text="Executing tsc$(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
    <Exec Command="tsc$(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

注入目标参数仍然很简单,只需将其放在tsc或$(TypeScriptSourceMap)之后:

<Message Text="Executing tsc --target ES5 $(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
<Exec Command="tsc --target ES5 $(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />

转载注明原文:javascript – 使用get set“退出代码1”编译TypeScript错误代码 - 代码日志