对于像ASP.NET MVC5这样的Visual Studio项目,如何在构建/调试时禁用TypeScript文件的编译?
我目前已将tsconfig.json
中的compileOnSave
和buildOnSave
设置为false。是否需要添加一些内容到项目的.csproj
以确保它不会被编译?
在调试ASP.NET MVC5项目时,它会编译所有的.ts
文件。
感谢您能提供的任何帮助。
对于像ASP.NET MVC5这样的Visual Studio项目,如何在构建/调试时禁用TypeScript文件的编译?
我目前已将tsconfig.json
中的compileOnSave
和buildOnSave
设置为false。是否需要添加一些内容到项目的.csproj
以确保它不会被编译?
在调试ASP.NET MVC5项目时,它会编译所有的.ts
文件。
感谢您能提供的任何帮助。
如此处所述,您可以在csproj文件的PropertyGroup中添加属性<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
(我将其添加到Configuration标签下)。这将禁用所有基于msbuild的TS编译。
启用此设置后,您不需要tsconfig.json设置compileOnSave/buildOnSave。
如果您使用较旧版本的Visual Studio(我隐含地考虑了VS 2017或2015年的xproj),则该属性可能为<TypeScriptEnabled>false</TypeScriptEnabled>
。
我已经配置了所有内容,但仍然无法解决问题(在Visual Studio 2019中)。 我额外添加了这个:
<TypeScriptCompileOnSaveEnabled>False</TypeScriptCompileOnSaveEnabled>
然后重新启动了Visual Studio。之后,它开始为我工作。
对我来说,其他解决方案都不起作用,而这个方案在项目加载时引发了错误(VS 2019 - 16.9.4)。
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> // doesn't work for me
另一种做相同事情的方法(虽然带有非常小的开销)是将所有的TS从编译索引中移除。
<TypeScriptCompile Remove="*" />
<TypeScriptCompile Remove="node_modules\**" />
ItemGroup
元素中使用TypeScriptCompile
。 - benmccallum以下方法对我有效(.NET 6,VS2022,ASP.NET Core + Angular项目)。 将以下设置添加到您的*.csproj文件中:
<PropertyGroup>
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
</PropertyGroup>
对于Visual Studio 2015,在PropertyGroup下添加以下行有所帮助。
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
我遇到了这个问题,在这里测试了所有发布的解决方法,但都没有成功。
但是在添加以下内容后,问题得以解决:
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
看起来我使用的版本无论设置如何都可以编译。
这个问题已经存在多年了。似乎还没有办法在网站项目中关闭它。
对我来说,以下设置(在“工具”>“选项”>“文本编辑器”>“JavaScript/TypeScript”>“项目”>“常规”下)似乎是最好的,可以大大减少控制台中的错误。
csproj.user
文件中,如果不想打扰团队成员的话。 - Mohayemin