我們有使用 Bundler & Minifier 來幫助我們將自己撰寫的 JS/CSS 檔案打包跟做最小化,但是 ASP.NET Core 專案在發佈的時候,預設會連同原始檔案也一併發佈出去,多了一些無謂的檔案,因此我們會希望專案在發佈的時候,不要輸出這些檔案。
修改 *.pubxml 檔案
ASP.NET Core 專案在 Visual Studio 發佈時,會產生一個 *.pubxml
檔案,被放在 Properties\PublishProfiles
底下。
修改裡面的內容,加上下面這段 XML。
<ItemGroup>
<Content Update="wwwroot\js\**\*.*">
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</Content>
<Content Update="wwwroot\js\**\*.min.js">
<CopyToPublishDirectory>Always</CopyToPublishDirectory>
</Content>
<Content Update="wwwroot\css\**\*.*">
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</Content>
<Content Update="wwwroot\css\**\*.min.css">
<CopyToPublishDirectory>Always</CopyToPublishDirectory>
</Content>
</ItemGroup>
它的作用是這樣的,將 wwwroot\js\ 底下包含子資料夾內的所有檔案,設為不要複製到輸出目錄
,接著再將 wwwroot\js\ 底下包含子資料夾內的 *.min.js,設為永遠複製到輸出目錄
,就大功告成了。