我在Visual Studio中有一个现有的TypeScript项目(Express for Web)。这个项目是用TypeScript 0.8.1创建的。为什么Visual Studio中的TypeScript项目的构建忽略TypeScriptTarget参数?
某些类使用属性,因此需要--target ES5
编译器参数。
我刚刚更新了插件到TypeScript 0.8.2,并且遵循了定义here的步骤来启用“保存时编译”。这如所描述的那样工作,包括编译使用属性的类。
当我尝试生成项目,但是,我得到的错误,如: Config.ts (32,6): Property accessors are only available when targeting ES5 or greater
这里是我的.csproj文件中的相关部分:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" />
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptIncludeComments>true</TypeScriptIncludeComments>
<TypeScriptSourceMap>true</TypeScriptSourceMap>
</PropertyGroup>
完整的文件可以看出here。
为什么它可以编译单个文件,但如果我编译或重建整个项目,它不会起作用吗?
编辑:更新代码片段以显示<Import>
标签也包含在内。
编辑2:添加到完整项目文件的要点的链接。
谢谢瑞安。是的,我还添加了标记,如Save-on-Compile wiki页面中所述。 –
2013-02-25 20:58:58
你可以发布你的整个项目文件(也许在要点或什么的)? – 2013-02-25 21:51:46
我已通过指向完整项目文件的链接更新了该问题。 – 2013-02-25 22:09:29