157

在 MVC 4 中,我们有捆绑包。在定义捆绑包时,我们可以对文件夹中的所有文件使用通配符,例如 *。

在下面的示例中是什么-{version}意思?

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js"));
}
4

3 回答 3

182

-{version}基本上映射到版本regex,或者更准确地说:(\d+(?:\.\d+){1,3})
使用*往往会抓住太多,例如,如果你 bundle jquery*,那也将包括jquery-ui可能会弄乱排序的东西。但是使用jquery-{version}.js可以让你避免每次升级 jquery 时都必须更新你的包定义。

需要注意的其他事项:

  • {version}仅适用于路径的最后一部分——基本上是文件名——而不是目录。
  • 同一文件夹中的多个版本的 jquery 都会被赶上。
于 2012-08-20T17:04:49.960 回答
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

于 2012-08-19T20:39:02.363 回答
0

~/Scripts/jquery-{version}.js包含在其中。当我们在路径中指定 {version} 选择器时,这里的捆绑系统足够智能,可以引用 jquery 文件的最高版本。此外,这个捆绑系统足够聪明,可以选择文件的缩小版本,如果在定义的路径上可用的话。

于 2019-05-05T15:21:40.727 回答