Asp.net-Mvc-4
是否有任何理由在 BundleConfig 中有多個 ScriptBundle 包?
這裡,預設的 MVC5 App BundleConfig:
public class BundleConfig { // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery-{version}.js")); bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include( "~/Scripts/jquery.validate*")); // Use the development version of Modernizr to develop with and learn from. Then, when you're // ready for production, use the build tool at http://modernizr.com to pick only the tests you need. bundles.Add(new ScriptBundle("~/bundles/modernizr").Include( "~/Scripts/modernizr-*")); bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include( "~/Scripts/bootstrap.js", "~/Scripts/respond.js")); } }只有一個捆綁包會簡單得多,您將在其中包含您需要的所有腳本嗎?像這樣:
public class BundleConfig { // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/scripts").Include( "~/Scripts/jquery-{version}.js", "~/Scripts/jquery.validate*", "~/Scripts/modernizr-*", "~/Scripts/bootstrap.js", "~/Scripts/respond.js")); } }或者,更簡單,像這樣(在 Script 文件夾中,您只放置您需要的 JS 文件):
public class BundleConfig { // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/scripts").Include("~/Scripts/*")); } }
只有一個捆綁包會簡單得多,您將在其中包含您需要的所有腳本嗎?
這可能會稍微簡化開發過程,因為您不需要查找要包含的相應包。但是讓我們從另一個角度來看這個。
在asp.net 論壇上有以下內容:
捆綁和縮小是您可以在 ASP.NET 4.5 中使用的兩種技術來改進請求載入時間。捆綁和縮小通過減少對伺服器的請求數量和減少請求資產(例如 CSS 和 JavaScript)的大小來縮短載入時間。
因此,我們進行捆綁以使工作更快。如果您使用不需要的簡單表單創建了一個頁面怎麼辦
bootstrap.js。如果您有興趣加快一切速度,為什麼還要載入它?最佳性能選項是將您可能需要的所有可能的 js 文件組合放在一個單獨的包中。每個頁面只發出一個請求來獲取它需要的所有 js。然而,這種事情的方式是相當難以維持。
因此,由您決定您對哪個方面感興趣。