问题描述
希望进行以下设置:
我正在开发 Blazor 应用程序,并使用官方 css 隔离捆绑器。不过,我正在使用 Less,并安装了一个 Less 转换器,它可以在构建时创建所需的 css。
但是,通过 dotnet watch run
运行我的应用程序,它现在经常以无限循环结束。
造成这种情况的原因可能是 dotnet watch run
看到 *.razor.css
文件发生了变化,重新构建,并且循环不断重复。
所以这是我的问题:
如何配置我的 csproj(新的网络标准格式)以将 **\*.razor.css
排除在监视过程之外?它也可以从我的整个 VS 解决方案中消失。
解决方法
对上述两个答案进行了尝试,但都不适合我。我在构建过程中生成了一些文件,这可能是其他 2 个文件对我不起作用的原因。根据上面共享的 Microsoft 文档 (https://docs.microsoft.com/en-us/aspnet/core/tutorials/dotnet-watch?view=aspnetcore-3.1),要从手表中删除项目,您还可以通过定义对其进行设置。这样做适用于我的场景。
<ItemGroup>
<Content Remove="wwwroot\dist\**" />
<Content Include="wwwroot\dist\**" Watch="false" />
</ItemGroup>
我确实必须添加内容删除,否则该项目被声明两次并且构建将失败。
,请编辑您的 .csproj 文件并向其中添加以下内容
<ItemGroup>
<Watch Exclude="**\*.razor.css" />
</ItemGroup>
更多信息在
https://docs.microsoft.com/en-us/aspnet/core/tutorials/dotnet-watch?view=aspnetcore-3.1
,来到这里后我遇到了同样的问题,结果是:
<ItemGroup>
<Watch Remove="wwwroot\**\*" />
</ItemGroup>
对我来说效果很好:)