0

所以我突然遇到了麻烦,当我进行捆绑和缩小时,它会提取错误的文件版本。

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

bundles.Add(new ScriptBundle("~/bundles/scripts").Include(
                             "~/Scripts/bootstrap.js",
                             "~/Scripts/knockout-{version}.js",
                             "~/Scripts/jquery.signalR-{version}.js",
                             "~/Scripts/underscore.js",
                             "~/Scripts/Code/vLib.js"
                             ));

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

我的解决方案中的文件是:jquery-1.8.3.js、jquery-ui-1.9.2.js、knockout-2.2.0.js、jquery.signalR-0.5.3.js。

我部署时网站正在寻找的文件是:jquery-1.7.2.js、jquery-ui-1.8.22.js、knockout-2.1.0.js、jquery.signalR-0.5.2.js。

我的理解是,当您使用该版本时,它会寻找最新版本....但我猜有些东西搞砸了。

有人有什么想法吗?

4

2 回答 2

0

{version} 模式基本上只是一个正则表达式,因此它将匹配并包含当前所有版本的 jquery。我们肯定会考虑在未来添加类似 {highest-version} 的东西。

于 2012-12-06T19:37:28.767 回答
0

它不使用最新的,但如果您将 jquery 更新到最新版本,则无需重新编译。我相信它会寻找第一个满足要求的文件。

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 在该链接中 Jon Galloway 指出“我最喜欢的部分之一是我们可以制作包含脚本名称中版本号的包,因此更新 jQuery(如果你是很棒)不需要任何代码/标记更改:”

于 2012-11-30T13:55:37.717 回答