Visual Studio 禁用MSBuild类型脚本编译

jk9hmnmh  于 2023-03-24  发布在  其他
关注(0)|答案(6)|浏览(162)

对于Visual Studio项目(如ASP.NET MVC 5),如何在构建/调试时禁用TypeScript文件的编译?
我目前将tsconfig.jsoncompileOnSavebuildOnSave设置为false。是否需要向项目.csproj添加某些内容以确保它不会被编译?
在调试ASP.NETMVC5项目时,它将编译所有.ts文件。
谢谢你能提供的任何帮助。

dba5bblo

dba5bblo1#

正如这里提到的,您可以将属性<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>添加到csproj文件中的PropertyGroup(我将其添加到Configuration标签下)。这应该会禁用所有基于msbuild的TS编译。
启用此设置后,您应该不需要tsconfig.json设置compileOnSave/buildOnSave。
如果您使用的是旧版本的Visual Studio(我已经隐式地考虑过VS 2017或xproj与2015),则属性可能是<TypeScriptEnabled>false</TypeScriptEnabled>

jyztefdp

jyztefdp2#

我已经配置了所有这些,但它仍然没有修复这个问题(在Visual Studio 2019中)。

<TypeScriptCompileOnSaveEnabled>False</TypeScriptCompileOnSaveEnabled>

然后重新启动了Visual Studio。在那之后,它开始为我工作。

34gzjxbg

34gzjxbg3#

其他解决方案都不适合我,这个解决方案导致了项目加载错误(VS 2019 - 16.9.4)

<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>  // doesn't work for me

另一种做同样事情的方法(尽管开销很小)是从编译索引中删除所有TS。

<TypeScriptCompile Remove="*" />

我使用它来避免编译节点模块,如下所示:

<TypeScriptCompile Remove="node_modules\**" />
ndasle7k

ndasle7k4#

对于Visual Studio 2015,在PropertyGroup下添加下面的行对我有帮助。

<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
w6lpcovy

w6lpcovy5#

我有这个问题,测试了所有的东西,是张贴在这里没有成功,
但添加了这个之后,事情就起作用了:

<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>

看起来我使用的版本不管设置如何都能编译。

wi3ka0sx

wi3ka0sx6#

下一个方法对我有用(.NET 6,VS2022,ASP.NET Core + Angular项目)。将此设置添加到您的 *.csproj文件:

<PropertyGroup>
        <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
</PropertyGroup>

相关问题