首頁 >後端開發 >C++ >為什麼我的 ASP.NET MVC4 捆綁包中沒有包含'.min.js”檔案?

為什麼我的 ASP.NET MVC4 捆綁包中沒有包含'.min.js”檔案?

Patricia Arquette
Patricia Arquette原創
2025-01-16 11:28:58573瀏覽

Why Aren't My `.min.js` Files Included in My ASP.NET MVC4 Bundles?

ASP.NET MVC4 捆綁程式和 .min.js 檔案:常見問題

使用 ASP.NET MVC4 捆綁器時,開發人員有時會遇到最小化 JavaScript 檔案 (.min.js) 被排除在捆綁包之外的問題。 即使您在 .min.js 中正確指定 BundleConfig 文件,輸出中也僅包含未最小化的版本。

例如,一個套件可能被定義為包含 ~/Scripts/jquery-1.8.0.js~/Scripts/jquery.tmpl.min.js。 但是,只有 jquery-1.8.0.js 出現在渲染的 HTML 中。

發生這種情況是因為當最佳化關閉時,BundleCollectionIgnoreList 預設忽略 .min 檔案。 若要解決此問題,您可以調整 IgnoreList 或重新命名檔案。

解:

  1. 重新命名 .min.js 檔案:最簡單的解決方案是重新命名最小化的檔案以使用 .js 副檔名。

  2. 修改 RegisterBundles: 更強大的方法包括修改 RegisterBundles 方法以明確控制忽略哪些檔案。 即使停用最佳化,這也允許您包含 .min.js 檔案。

修正RegisterBundles方法:

<code class="language-csharp">public static void RegisterBundles(BundleCollection bundles)
{
    bundles.IgnoreList.Clear();
    AddDefaultIgnorePatterns(bundles.IgnoreList);

    // Explicitly ignore .min.js files ONLY when optimization is disabled.
    bundles.IgnoreList.Ignore("*.min.js", OptimizationMode.WhenDisabled);
}</code>

透過清除預設的 IgnoreList 並新增此自訂規則,無論最佳化設定如何,捆綁程式都可以正確處理 .min.js 文件,確保最小化的腳本包含在捆綁包中。

以上是為什麼我的 ASP.NET MVC4 捆綁包中沒有包含'.min.js”檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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