首頁 >後端開發 >C++ >為什麼 ASP.NET MVC 捆綁會忽略我的 .min.js 檔案?

為什麼 ASP.NET MVC 捆綁會忽略我的 .min.js 檔案?

Linda Hamilton
Linda Hamilton原創
2025-01-16 11:48:02609瀏覽

Why are My .min.js Files Ignored by ASP.NET MVC Bundling?

解決ASP.NET MVC捆綁忽略.min.js檔案的問題

ASP.NET MVC中的Razor視圖引擎透過捆綁功能實現了高效的JavaScript和CSS檔案管理。然而,在捆綁副檔名為.min.js的檔案時,可能會出現一個特殊問題:捆綁程式可能會忽略.min.js文件,而正常處理普通的.js檔案。

BundlerConfig類別用於配置捆綁過程。在這個類別中,可以定義腳本捆綁包,指定要包含的檔案。但是,當一個捆綁包包含一個.min.js檔案時,捆綁包無法在輸出中渲染該檔案。

這個問題的原因是捆綁程式維護的預設忽略清單。與清單中模式相符的檔案將被排除在捆綁之外。預設情況下,忽略清單包含諸如*.intellisense.js、*-vsdoc.js等模式。它也在OptimizationMode.WhenEnabled和OptimizationMode.WhenDisabled中分別包含*.debug.js和*.min.js。

要解決此問題,您可以將jquery.tmpl.min.js重新命名為jquery.tmpl.js,或修改忽略清單以明確排除*.min.js檔案。後者的方法包括重寫AddDefaultIgnorePatterns方法來更改預設忽略列表:

<code class="language-csharp">public static void AddDefaultIgnorePatterns(IgnoreList ignoreList)
{
    if (ignoreList == null)
        throw new ArgumentNullException("ignoreList");
    ignoreList.Ignore("*.intellisense.js");
    ignoreList.Ignore("*-vsdoc.js");
    ignoreList.Ignore("*.debug.js", OptimizationMode.WhenEnabled);
    //ignoreList.Ignore("*.min.js", OptimizationMode.WhenDisabled);
    ignoreList.Ignore("*.min.css", OptimizationMode.WhenDisabled);
}</code>

透過重寫此方法並從ignoreList.Ignore("*.min.js", OptimizationMode.WhenDisabled);行中刪除//,您可以有效地將.min.js檔案從忽略清單中排除。此修改可確保捆綁程式在輸出中包含副檔名為.min.js的文件,從而解決了這個問題。

以上是為什麼 ASP.NET MVC 捆綁會忽略我的 .min.js 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn