用BundleConfig推迟加载JQuery是否正常?

时间:2015-08-05 18:20:37

标签: javascript jquery asp.net

我想知道为什么这可能是一个好的或不那么好的主意。在我们的BundleConfig.cs文件中,我们有:

var jsBundle = new ScriptBundle("~/bundles/scripts");

jsBundle.Include("~/Content/JS/jquery.1.11.2.js");
jsBundle.Include("~/Content/JS/bootstrap.3.3.4.js");
jsBundle.Include("~/Content/JS/jquery-ui-1.11.4.js");
jsBundle.Include("~/Content/JS/ie10-viewport-bug-workaround.js");
jsBundle.Include("~/Content/JS/Script.js");

jsBundle.Orderer = new NonOrderingBundleOrderer();

bundles.Add(jsBundle);

此包在我们的基本_Layout视图中呈现,如下所示:

@Styles.Render("~/bundles/css")
@Scripts.RenderFormat("<script src='{0}' defer></script>", "~/bundles/scripts")

因此,如果我们需要添加任何javascript,我需要将其添加到捆绑包中的一个脚本。否则,因为JQuery被推迟,我的页面/视图中的脚本将无法运行,因为它尚未加载。

我被告知此项目中的javascript项目被推迟,以允许加载页面而无需等待javascript文件。这有什么不同吗?

1 个答案:

答案 0 :(得分:0)

我以前从未见过这种方法,我敢打赌,如果JS文件被捆绑和缩小,页面加载时间的差异可以忽略不计。

这种方法也使得在我看来使用Javascript编写脚本非常困难