在MVC 4中,我们有捆绑。在定义包时,我们可以使用*这样的通配符来处理文件夹中的所有文件。
在下面的例子中-{version}
是什么意思?
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
}
答案 0 :(得分:175)
-{version}
基本上映射到版本regex,或者确切地说是(\d+(?:\.\d+){1,3})
。
使用*
往往会占用太多,例如,如果您捆绑jquery*
,那么也会包含jquery-ui
,这可能会破坏排序。但是,使用jquery-{version}.js
可以避免每次升级jquery时都必须更新bundle定义。
需要注意的其他事项:
{version}
仅适用于路径的最后部分 - 基本上是文件名 - 而不是目录。 答案 1 :(得分:12)
此捆绑包能够容纳脚本名称中的版本号。因此,将jQuery更新为应用程序中的新版本(通过NuGet或手动)不需要任何代码/标记更改。
有关捆绑的更多信息,请参阅以下链接:http://weblogs.asp.net/jgalloway/archive/2012/08/16/asp-net-4-5-asp-net-mvc-4-asp-net-web-pages-2-and-visual-studio-2012-web-developer-features.aspx
答案 2 :(得分:0)
~/Scripts/jquery-{version}.js
包含在其中。当我们在路径中指定{version}选择器时,这里的捆绑系统足够聪明,可以引用最高版本的jquery文件。而且,这种捆绑系统足够聪明,可以选择文件的缩小版本(如果在定义的路径上可用)。