渲染jquery包时出现奇怪的问题

时间:2013-05-31 10:00:54

标签: c# asp.net-mvc-4 razor

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

jquery包的bundle配置是这样的:

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>

1 个答案:

答案 0 :(得分: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

我建议你在第二个选项之前尝试第一个选项。预发布可能在以后的某个问题中出现同样的问题。这是肯定的。因为它的预发布