如何在 .Net Core 项目中禁用 TypeScript 编译?
How to disable TypeScript compilation in .Net Core projects?
我有一个 Visual Studio 2015 ASP.Net 核心项目,其中包含一个打字稿文件文件夹。
我的问题是如何防止 VS 尝试编译 TypeScript 文件?我不希望它们在保存或构建时被编译。
我试过在下面添加项目设置,但似乎没有任何影响。
<PropertyGroup>
<TypeScriptCompileOnSaveEnabled>False</TypeScriptCompileOnSaveEnabled>
</PropertyGroup>
目前 VS 正在抛出一个错误,tsc.exe exited with code 1
,但如前所述,我根本不希望 TS 编译器 运行。
我可以禁用 VS 使用的 typescript.targets,但这不实用,因为我需要它用于其他项目。
我花了一些时间在 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\Microsoft.TypeScript.targets
文件中挖掘,我发现了一个支持 属性 似乎可以完成这项工作。
将此 属性 添加到项目中,方法是直接编辑项目文件并添加此 属性 组:
<PropertyGroup>
<!-- Makes the TypeScript compilation task a no-op -->
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
</PropertyGroup>
编辑: @Chopin 在评论中指出这个和其他 Typescript MSBuild 相关选项的官方文档是 here.
这个技巧确实适用于新版本的 MSBuild。但是,如果您仍然有旧版本的 MSBUild,则在构建服务器上。您还想从 csproj 文件中删除这些行。
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
此致
我有一个 Visual Studio 2015 ASP.Net 核心项目,其中包含一个打字稿文件文件夹。
我的问题是如何防止 VS 尝试编译 TypeScript 文件?我不希望它们在保存或构建时被编译。
我试过在下面添加项目设置,但似乎没有任何影响。
<PropertyGroup>
<TypeScriptCompileOnSaveEnabled>False</TypeScriptCompileOnSaveEnabled>
</PropertyGroup>
目前 VS 正在抛出一个错误,tsc.exe exited with code 1
,但如前所述,我根本不希望 TS 编译器 运行。
我可以禁用 VS 使用的 typescript.targets,但这不实用,因为我需要它用于其他项目。
我花了一些时间在 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\Microsoft.TypeScript.targets
文件中挖掘,我发现了一个支持 属性 似乎可以完成这项工作。
将此 属性 添加到项目中,方法是直接编辑项目文件并添加此 属性 组:
<PropertyGroup>
<!-- Makes the TypeScript compilation task a no-op -->
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
</PropertyGroup>
编辑: @Chopin 在评论中指出这个和其他 Typescript MSBuild 相关选项的官方文档是 here.
这个技巧确实适用于新版本的 MSBuild。但是,如果您仍然有旧版本的 MSBUild,则在构建服务器上。您还想从 csproj 文件中删除这些行。
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
此致