Visual studio 2012 为什么在VisualStudio中生成我的TypeScript项目时会忽略TypeScriptTarget参数?

Visual studio 2012 为什么在VisualStudio中生成我的TypeScript项目时会忽略TypeScriptTarget参数?,visual-studio-2012,typescript,Visual Studio 2012,Typescript,我在Visual Studio(Express 2012 for Web)中有一个现有的TypeScript项目。此项目是使用TypeScript 0.8.1创建的 有些类使用属性,因此需要--target ES5编译器参数 我刚刚将插件更新为TypeScript 0.8.2,并按照定义的步骤启用“保存时编译”。其工作原理如所述,包括编译使用属性的类 但是,当我尝试构建项目时,会出现以下错误: Config.ts(32,6):属性访问器仅在针对ES5或更高版本时可用 以下是my.csproj文件

我在Visual Studio(Express 2012 for Web)中有一个现有的TypeScript项目。此项目是使用TypeScript 0.8.1创建的

有些类使用属性,因此需要
--target ES5
编译器参数

我刚刚将插件更新为TypeScript 0.8.2,并按照定义的步骤启用“保存时编译”。其工作原理如所述,包括编译使用属性的类

但是,当我尝试构建项目时,会出现以下错误:
Config.ts(32,6):属性访问器仅在针对ES5或更高版本时可用

以下是my.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>

ES5
真的
真的
可以看到完整的文件

为什么它适用于编译单个文件,但如果我构建或重建整个项目,它就不起作用了

编辑:更新了代码段,显示
标记也包含在内


编辑2:添加了完整项目文件要点的链接。

是否修改了.csproj文件以同时导入TypeScript.targets文件(代替调用TSC的生成事件操作)?如果您只是更新PropertyGroup,那么实际上就不会通过将这些设置转换为命令行标志来调用编译器


编辑:需要将
Import
标记放在
PropertyGroup
之后(否则导入的文件无法“查看”正在设置的属性值)。理想情况下,
Import
将是文件中的最后一个或接近最后一个-当然是在所有的
PropertyGroup
s改变了它所依赖的设置之后。

谢谢。是的,我还添加了标记,如“在编译时保存wiki”页面上所述。您可以发布整个项目文件(可能是要点或其他内容)吗?我已使用指向完整项目文件的链接更新了该问题。谢谢,这已修复了它-仍在学习VS和MSBuild的操作方法。