Visual studio 2013 在Visual Studio 2013中禁用类型脚本编译

Visual studio 2013 在Visual Studio 2013中禁用类型脚本编译,visual-studio-2013,gruntjs,Visual Studio 2013,Gruntjs,我正在运行grunt,并且已经设置了一个typescript构建过程来侦听文件更改,因此,在保存或构建项目时,我不需要默认VS编译我的typescript文件 我已在项目属性中取消选中typescript下的“保存时编译”选项,但ts文件仍在编译中。对我来说,唯一可行的方法是将单个TS文件的构建操作设置为“无”,但这仍然会导致编译一些Typescript文件。在VS2013中有什么方法可以做到这一点吗?将TypeScript文件上的生成操作属性更改为除TypeScript编译之外的其他内容。我发

我正在运行grunt,并且已经设置了一个typescript构建过程来侦听文件更改,因此,在保存或构建项目时,我不需要默认VS编译我的typescript文件


我已在项目属性中取消选中typescript下的“保存时编译”选项,但ts文件仍在编译中。对我来说,唯一可行的方法是将单个TS文件的构建操作设置为“无”,但这仍然会导致编译一些Typescript文件。在VS2013中有什么方法可以做到这一点吗?

将TypeScript文件上的
生成操作
属性更改为除
TypeScript编译

之外的其他内容。我发现了同样的问题和解决方案,即覆盖VS项目文件中的TypeScript目标:

<Target Name="PreComputeCompileTypeScript">
  <Message Text="Skipping PreComputeCompileTypeScript" />
</Target>
<Target Name="CompileTypeScript">
  <Message Text="Skipping CompileTypeScript" />
</Target>
<Target Name="GetTypeScriptCopyToOutputDirectoryItems">
  <Message Text="Skipping GetTypeScriptCopyToOutputDirectoryItems" />
</Target>

在VS2015中,可以将
true
设置添加到.csproj中的第一个
元素中

然后,msbuild输出应显示

PreComputeCompileTypeScript:
  TypeScript compile is skipped because the TypeScriptCompileBlocked property is set to true.

发件人:

@Christopher Mott answer也适用于Visual Studio 2013,至少适用于Microsoft Visual Studio 2013 1.8.5.0的更新5类型脚本工具。可以肯定的是,可以验证VS TypeScript工具链是否理解该标志:

打开意向项目的
.csproj
文件,注意它从以下部分导入TypeScript目标:

$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets

这通常对应于:

C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\\TypeScript\Microsoft.TypeScript.targets

检查该文件并查找在某些
中定义的
TypeScriptCompileBlocked
。如果它在那里,你就被分类了。返回到
.csproj
文件并在导入TypeScript目标的位置之后添加以下内容:


真的

您有解决方案吗?当前有相同的问题。您好xvdiff。如上所述,取消选中“我的项目属性”中typescript下的“保存时编译”选项,然后将ts文件的生成操作设置为“无”。我知道这有点乏味,但这是我让它工作的唯一方法。请确保您没有Web Essentials或类似的可在构建时编译的扩展。对于我的VS2015 asp.net core RC2项目(没有.csproj文件),将true添加到.xproj(不是.csproj)文件停止了发布项目时发生的typescript编译。Typescript在开发过程中没有在保存时编译,因为我在项目中添加了一个tsconfig.json(没有“compileOnSave”:true)。我使用gulp来编译我的工作流。但在我的例子中,在发布我的项目时,需要true来抑制编译。我使用的是Typescript 1.8.9。