仅发布 JavaScript 个文件的缩小版本 (ASPNET Core)
Publish only minified versions of JavaScript files (ASPNET Core)
虽然有几篇关于这个问题的文章,但我似乎找不到任何最新的适用于 ASPNET Core 2.x、Visual Studio 2017.
如何只发布 JavaScript (.js) 文件的缩小版本?
最好通过发布配置文件 (.pubxml) 执行此操作,这样我就可以 include/exclude 通过设置不同的发布配置文件(Dev、UAT、Staging、Production。
发布配置文件本质上是项目文件覆盖,并使用与项目文件相同的架构。微软在这里提供了一个例子:https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/visual-studio-publish-profiles?view=aspnetcore-2.2#exclude-files
<ItemGroup>
<Content Update="wwwroot/content/**/*.txt" CopyToPublishDirectory="Never" />
</ItemGroup>
此外,您可以直接在项目中根据构建配置将项目中的任何文件设置为包含或排除:
Conditional Content Based Upon Configuration
只需排除所有 .css/.js 文件,然后包含 .min 文件。最后一条规则覆盖之前的规则。
<ItemGroup>
<Content Update="wwwroot\**\*.css" CopyToPublishDirectory="never" />
<Content Update="wwwroot\**\*.min.css" CopyToPublishDirectory="always" />
<Content Update="wwwroot\**\*.js" CopyToPublishDirectory="never" />
<Content Update="wwwroot\**\*.min.js" CopyToPublishDirectory="always" />
</ItemGroup>
虽然有几篇关于这个问题的文章,但我似乎找不到任何最新的适用于 ASPNET Core 2.x、Visual Studio 2017.
如何只发布 JavaScript (.js) 文件的缩小版本?
最好通过发布配置文件 (.pubxml) 执行此操作,这样我就可以 include/exclude 通过设置不同的发布配置文件(Dev、UAT、Staging、Production。
发布配置文件本质上是项目文件覆盖,并使用与项目文件相同的架构。微软在这里提供了一个例子:https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/visual-studio-publish-profiles?view=aspnetcore-2.2#exclude-files
<ItemGroup>
<Content Update="wwwroot/content/**/*.txt" CopyToPublishDirectory="Never" />
</ItemGroup>
此外,您可以直接在项目中根据构建配置将项目中的任何文件设置为包含或排除: Conditional Content Based Upon Configuration
只需排除所有 .css/.js 文件,然后包含 .min 文件。最后一条规则覆盖之前的规则。
<ItemGroup>
<Content Update="wwwroot\**\*.css" CopyToPublishDirectory="never" />
<Content Update="wwwroot\**\*.min.css" CopyToPublishDirectory="always" />
<Content Update="wwwroot\**\*.js" CopyToPublishDirectory="never" />
<Content Update="wwwroot\**\*.min.js" CopyToPublishDirectory="always" />
</ItemGroup>