javascript - 加载许多 js 文件和变量的最快方法

标签 javascript jquery bundling-and-minification

对于一个更大的项目(即单个网站应用程序),我大量使用 jquery、js 和 ajax 调用。

正如我在 C# 和 ASP.Net 中所做的那样,当然,我尝试将函数/变量拆分为一堆 js 文件,用于分类,例如1 个用于我的“目标”的文件,1 个用于我的“佣金”的文件(这是我的申请的一部分)...

现在我几乎完成了这里的工作,最终得到了大约 20 到 25 个 js 文件,我将这些文件一个接一个地加载到我的 default.aspx 中...

这真的是正确(且最快)的处理方法吗?

最佳答案

Bundling and minification实际上是ASP.Net 4.5的一个新特性

您可以通过使用 Visual Studio 创建一个新的 ASP.Net MVC 4 Web 应用程序来查看它,然后使用 Web 应用程序模板,它会创建一个捆绑配置类,它可能会执行您想要的操作:

public class BundleConfig
{
    // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-{version}.js"));

        bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                    "~/Scripts/jquery-ui-{version}.js"));

        bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                    "~/Scripts/jquery.unobtrusive*",
                    "~/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 StyleBundle("~/Content/css").Include("~/Content/site.css"));

        bundles.Add(new StyleBundle("~/Content/themes/base/css").Include(
                    "~/Content/themes/base/jquery.ui.core.css",
                    "~/Content/themes/base/jquery.ui.resizable.css",
                    "~/Content/themes/base/jquery.ui.selectable.css",
                    "..."

    }
}

必须在 Application_Start() 方法上调用此捆绑配置类:

BundleConfig.RegisterBundles(BundleTable.Bundles);

关于javascript - 加载许多 js 文件和变量的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24911155/

相关文章:

asp.net-mvc - 我如何将捆绑与 TinyMCE 结合使用?

javascript - 如果容器不透明度 < 1.0,Firefox 不透明度问题 : text gets weird, 彩色轮廓

javascript - 窗口调整大小不起作用

jquery - KeyUp/KeyDown keyCode 不适用于 IE 中的密码字段?

jquery - Jquery UI 对话框的问题

asp.net-mvc - MVC4 捆绑/缩小与 IE 条件注释

javascript - 脚本不按 ID 定位某些元素,但在其他元素上运行良好

javascript - 如何防止用户在输入字段中输入无效字符

Javascript find 方法在第一次匹配后不会停止

asp.net-mvc-4 - jquery 2.0 捆绑缩小条件注释