jquery - 刚开始 mvc 4 我可以在哪里调整包

标签 jquery asp.net-mvc-4 bundle

我刚刚启动 mvc4,在 _layout 上我看到 2 个新元素

  <link href="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Content/css")" rel="stylesheet" type="text/css" />
    <script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script>

正如我所读到的,这些包用于将所有内容加载在一起,从而节省时间,我大量使用 jquery,所以我修改了我的 _layout ,以便标题现在看起来像这样

<link href="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Content/css")" rel="stylesheet" type="text/css" />
    <script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script>

<script src="@Url.Content("~/Scripts/jquery-1.8.2.min.js")" type="text/javascript">

为了允许 Jquery,这违背了 bundle 的目的,所以我的问题是如何将最终的 jquery 文件包含在 JS bundle 中?我似乎找不到这些 bundle 在哪里,我查看了 Global.asax 内部,但不在那里。

最佳答案

在 ASP.NET MVC4 中,如果您遵循默认项目模板,则有两个位置与 bundle 功能有关:

在 Global.asax.cs 中,您在 Application_Start 方法中注册您的包:

   protected void Application_Start()
   { 
    ......
    BundleConfig.RegisterBundles(BundleTable.Bundles);        
   }

现在在 App_Start 文件夹中您有 BundleConfig.cs 文件。在此文件中,默认情况下有一些由模板创建的 css 和 js 包。 在 RegisterBundles(BundleCollection 包) 方法中,您可以将文件添加到现有包中,或者根据需要创建自己的包:

     public static void RegisterBundles(BundleCollection bundles)
     {
       bundles.Add(new ScriptBundle("~/bundles/yourNewBundleName").Include(
                            "~/Scripts/yourFile1",
                                 "~/Scripts/ yourFile2"));
     }

在这里,您可以根据需要指定包的名称,而不是“~/bundles/yourNewBundleName”,并包含然后所需的所有文件,并在 _Layout.cshtml 或任何其他 View 中引用它。通过引用它,您所包含的所有文件都将在那里可用。

关于jquery - 刚开始 mvc 4 我可以在哪里调整包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19988070/

相关文章:

c# - ASP.NET MVC 路由表中没有路由与提供的值匹配

c# - MVC 4 Controller 中的异步和等待

ruby-on-rails - 您的 bundle 需要彼此依赖的 gem,从而创建一个无限循环。请删除 gem

asp.net-mvc - `BundleTable.EnableOptimizations = true` 时是否使用版本文件的 .min ?

javascript - 打开和关闭的图像交换未在正确的时间更改

javascript - 使用 filedownload jquery 插件处理 FilePathResult 返回值

javascript - 在 ajax 调用后使用点击不起作用

php - 使用 jquery 在 XHR 响应中单击

asp.net-mvc-3 - LINQ to Entities 仅支持转换 EDM 基元或枚举类型

android - 将包从一个 Intent 转发到另一个 Intent