0

尝试@Scripts.Render()在我的一个页面上使用时,我得到了一个奇怪的结果。

jquery 包的包配置是这样的:

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                "~/Scripts/jquery-1.9.1.min.js",
                "~/Scripts/jquery-ui-1.10.3.min.js"));

然后在视图中调用它,如下所示:

@Scripts.Render("~/bundles/jquery")

生成指向 raphaeljs 或我的 system.js 文件的链接没有问题。但它根本不渲染 jquery。

运行时的结果是这样的:

<link href="/Content/System.css" rel="stylesheet"/>

<link href="/Content/jquery.qtip.css" rel="stylesheet"/>


<script src="/Scripts/system.js"></script>

<!--qtip-->
<script src="/Scripts/jquery.qtip.js"></script>

<!--Jquery-->

<!--Raphaeljs-->
<script src="/Scripts/raphael-min.js"></script>
4

1 回答 1

2

对此有两种可能的解决方案。我在之前的项目中遇到了完全相同的问题。

第一次尝试:这是我最好的镜头。这告诉助手在调试时忽略 .min.js。你的 DOM 上的一些插件可能已经被缩小了。要求助手缩小它会导致其逻辑混乱。

BundleTable.Bundles.IgnoreList.Clear(); // apparently, IgnoreList included .min.js in debug
BundleTable.Bundles.IgnoreList.Ignore(".intellisense.js", OptimizationMode.Always);
BundleTable.Bundles.IgnoreList.Ignore("-vsdoc.js", OptimizationMode.Always);
BundleTable.Bundles.IgnoreList.Ignore(".debug.js", OptimizationMode.Always);

它是一个捆绑设置。因此,将代码放在其他捆绑代码之前。

第二次尝试:通过 nuget 包管理器将 ASP.NET WEB OPTIMIZATION HELPER 更新到预发布版本

PM> Install-Package Microsoft.AspNet.Web.Optimization -Pre

我建议你在第二个之前尝试第一个选项。预发布版将来可能会遇到同样的问题。这是肯定的。因为它的预发布

于 2013-05-31T10:24:37.530 回答