我正在使用bundleconfig.cs类向我的应用添加一些jQuery脚本文件。
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-ui-{version}.js",
"~/Scripts/jquery.mCustomScrollbar.min.js",
"~/Scripts/jquery.mousewheel.min.js",
"~/Scripts/jtable/jquery.jtable.js"));
当我运行我的应用程序并检查页面源时,只引用了一些脚本文件:
<script src="/Scripts/jquery-1.10.2.js"></script>
<script src="/Scripts/jquery-ui-1.10.3.js"></script>
<script src="/Scripts/jtable/jquery.jtable.js"></script>
<script src="/Scripts/jquery-migrate-1.2.1.min.js"></script>
为什么会这样?我可以通过手动将脚本引用直接添加到_Layout.cshtml来解决此问题,但这不是最佳实践。
答案 0 :(得分:14)
.min 部分已由MVC处理 - 它将自动包含用于调试模式的 .js 文件和 .min.js 文件对于发布模式。
只需下载未经启发的 jquery.mCustomScrollbar.min.js 版本并将其放入您的脚本目录中,然后将其引用为: 的 jquery.mCustomScrollbar.js 强>
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-ui-{version}.js",
"~/Scripts/jquery.mCustomScrollbar.js",
"~/Scripts/jquery.mousewheel.js",
"~/Scripts/jtable/jquery.jtable.js"));
然后,MVC将为Debug / Release 加载适当的脚本
答案 1 :(得分:2)
可能是因为你没有启用捆绑。 尝试将编译时的调试属性值更改为false
<compilation debug="false" targetFramework="4.0" />
或手动启用:
BundleTable.EnableOptimizations = true;