渲染jquery bundle时的奇怪问题

本文关键字:问题 jquery bundle 渲染 | 更新日期: 2023-09-27 18:16:09

当我试图在我的一个页面上使用@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>

渲染jquery bundle时的奇怪问题

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

第一次尝试:这是我最好的机会。这告诉助手在调试时忽略.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);

这是一个捆绑设置。所以把代码放在其他bundle代码之前。

SECOND TRY:更新ASP。. NET WEB OPTIMISATION HELPER通过nuget包管理器到预发布版本

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

我建议你在选择第二项之前先尝试第一项。预发行版可能会在以后出现同样的问题。那是肯定的。因为它是预发布版