Jquery 使用缩小版本时的验证包

Jquery validation bundle when use minification version

在 MVC 中有 RegisterBundles class 我们可以在上面注册包

有用于 jquery 验证的捆绑包:

     bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                    "~/Scripts/jquery.validate.*"));

jquery.validate.* 表示加载

 jquery.validate.js and jquery.validate.unobtrusive.js

我在调试模式和发布模式下启动我的应用程序,我注意到它已加载 jquery.validate.js and jquery.validate.unobtrusive.js

我的问题是如何在发布模式下加载缩小版本 jquery.validate.min.js 和 jquery.validate.unobtrusive.min.js

为什么捆绑包不是第一个

 bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                        "~/Scripts/jquery.validate.min.js",
 "~/Scripts/jquery.validate.unobtrusive.min.js"));

即使您通过添加

添加 js/css 的非缩小版本,您也可以启用缩小
BundleTable.EnableOptimizations = true;

在您的 RegisterBundles 方法中(App_Start 文件夹中的 BundleConfig class)。

查看this了解更多信息

您也可以通过 web.config:

启用它
<system.web>
    <compilation debug="false" />
</system.web>

由于在发布模式下,转换脚本会将调试属性设置为 false,因此我建议通过此属性启用优化。

您可以检查转换 web.Release.config 是否没有删除调试属性,然后您可以更新它

 <system.web>
    <compilation xdt:Transform="RemoveAttributes(debug)" />
 </system.web>