Asp.Net MVC bundle未使用现有的 .min.js



我正在使用 Asp.Net MVC 4和内置的捆绑支持。 在 BundleConfig 中.cs我在 RegisterBundles 方法中添加了默认的 jquery:

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

我的项目中还包含jquery-1.8.0.jsjquery-1.8.0.min.js

调试时一切正常,但是当我设置debug="false"来测试捆绑时,似乎它正在缩小默认的jquery文件,而不是使用已经存在的缩小版本。 当我在我的项目中查看jquery的"min"版本时,它在顶部包含一个小注释,第一个方法定义是function(a,b)。 当我在浏览器中查看输出时,缺少注释,并且第一个方法定义不同。

还有其他人看到这个问题吗? 如何让捆绑机制使用现有的 .min 文件而不重新缩小?

这可以通过在web.config中将属性usePreMinifiedFiles设置为true来设置

<core enableTracing="false" ...>
     <js defaultMinifier="EdwardsJsMinifier" usePreMinifiedFiles="true">

添加带有通配符的文件时,将排除名称中带有 min 的文件,请尝试重命名名称中不带 min 的文件。

您是否不希望重新缩小文件? 它应该是安全的。 目前没有办法有选择地禁用部分缩小,基本上所有文件都先捆绑在一起,然后整个捆绑包被缩小。

但是当debug=false时,它应该使用jquery-1.8.0.min.js文件,而不是jquery-1.8.0.js文件。

最新更新