1、MVC可以通过BundleConfig类来配置css和js的统一引用,分别通过StyleBundle和ScriptBundle来创建。
2、可以在母版页中统一加载设置在BundleConfig.cs中的StyleBundle和ScriptBundle
3、格式案例如下:
public static class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
bundles.IgnoreList.Clear(); #region //VENDOR RESOURCES //~/Bundles/App/vendor/css
bundles.Add(
new StyleBundle("~/Bundles/App/vendor/css")
.Include("~/Content/themes/base/all.css", new CssRewriteUrlTransform())
.Include("~/Content/bootstrap.min.css", new CssRewriteUrlTransform())
.Include("~/Content/ui.jqgrid-bootstrap.css", new CssRewriteUrlTransform()) );
//~/Bundles/App/vendor/js
bundles.Add(
new ScriptBundle("~/Bundles/App/vendor/js")
.Include(
"~/Scripts/jquery-2.2.4.js",
"~/Scripts/jquery-ui-1.11.4.js",
"~/Scripts/jquery.validate.js",
"~/Scripts/modernizr-2.8.3.js",
"~/Abp/ie10fix.js",
"~/Scripts/json2.min.js",
"~/Scripts/i18n/grid.locale-cn.js",
"~/Scripts/jquery.jqGrid.min.js"
);
#endregion
BundleTable.EnableOptimizations = false;
}
}
说明:
1)母板页中加载Bundle格式如下:
@Styles.Render("~/Bundles/App/vendor/css") //~/Bundles/App/vendor/css为定义在BundleConfig中的StyleBundle @Scripts.Render("~/Bundles/App/vendor/js") //~/Bundles/App/vendor/js为定义在BundleConfig中的ScriptBundle
2)在BundleConfig.cs中StyleBundle和ScriptBundle所引入的插件被压缩规则说明
压缩规则:默认会被压缩,将不含.min的插件进行压缩后再引入至页面中,若插件已带有.min则不会被压缩同时也不会引入至页面中。
~故沿用默认规则,需要确保在Bundle中的设置插件不含有.min后缀
~如果要忽略压缩规则,添加以下语句至BundleConfig.cs中的RegisterBundles方法末尾,语法:
BundleTable.EnableOptimizations = false;