如何在asp.net中捆绑js文件?

时间:2016-07-18 02:22:54

标签: javascript asp.net angularjs bundling-and-minification asp.net-bundling

我有一个包含大量js文件的角度应用程序,如何捆绑所有这些文件。

我在网上看到的每个地方都建议使用BundleConfig捆绑js文件 但我在asp.net中使用空的web应用程序模板。

如何按顺序捆绑js文件,以免出现冲突,并且选择绝对路径和相对路径没有问题

2 个答案:

答案 0 :(得分:1)

如何创建一个完整的MVC项目的新项目(选择MVC作为tempalte而不是'空'。然后在App_Start / BundleConfig.cs下查看,创建该文件并将其注册为默认项目在的global.asax.cs?

的global.asax.cs:

BundleConfig.RegisterBundles(BundleTable.Bundles);

App_Start / BundleConfig.cs

using System.Web;
using System.Web.Optimization;

namespace WebApplication1
{
    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"));

            bundles.Add(new StyleBundle("~/Content/css").Include(
                      "~/Content/bootstrap.css",
                      "~/Content/site.css"));
        }
    }
}

说实话。我会使用基于节点的工具,如webpack或gulp来做到这一点。您可以使用捆绑包,但它们不是那么强大,您可能会错过在前端构建中可以执行的许多操作。例如,在正确的加载顺序方面,它会有很多帮助。

答案 1 :(得分:0)

通常,我们有两种捆绑AnguarJS / ASP.NET的方法:

  1. 使用来自Justsayno的BundleCollection上面的捆绑包
  2. 使用压缩JS工具,如grunt或gulp。样品。 https://github.com/MarlabsInc/webapi-angularjs-spahttps://github.com/dchill72/NpmBowerGulpSample
  3. 希望有所帮助!