为什么使用@ Scripts.Render(“〜/ bundles / jquery”)

如何

@Scripts.Render("~/bundles/jquery") 

不同于像这样只从HTML引用脚本

 <script src="~/bundles/jquery.js" type="text/javascript"></script> 

有什么performance收益吗?

绑定就是将几个JavaScript或样式表文件压缩到一个文件中,而不用任何格式(也称为缩小)来保存带宽和请求数来加载页面。

例如,您可以创build自己的包:

 bundles.Add(New ScriptBundle("~/bundles/mybundle").Include( "~/Resources/Core/Javascripts/jquery-1.7.1.min.js", "~/Resources/Core/Javascripts/jquery-ui-1.8.16.min.js", "~/Resources/Core/Javascripts/jquery.validate.min.js", "~/Resources/Core/Javascripts/jquery.validate.unobtrusive.min.js", "~/Resources/Core/Javascripts/jquery.unobtrusive-ajax.min.js", "~/Resources/Core/Javascripts/jquery-ui-timepicker-addon.js")) 

并像这样渲染:

 @Scripts.Render("~/bundles/mybundle") 

对于样式表,您将不得不使用StyleBundle和@ Styles.Render()。

所有文件都被压缩到一个JavaScript或样式表文件中并加载在一起,而不是用单个请求(使用脚本或链接标签)加载每个脚本或样式。

你也可以使用:

 @Scripts.RenderFormat("<script type=\"text/javascript\" src=\"{0}\"></script>", "~/bundles/mybundle") 

在需要使用字符集,types等的场景中指定输出的格式