脚本包不在调试中呈现单个文件

时间:2014-09-29 14:20:18

标签: asp.net-mvc

我定义了两个脚本包:

bundles.Add(new ScriptBundle("~/scripts/common").Include(
                        "~/Scripts/jquery-1.11.1.js",
                        "~/Scripts/jquery-ui-1.10.4.custom.min.js",
                        "~/Scripts/jquery.validate.js"));

bundles.Add(new ScriptBundle("~/scripts/sectionCommon").Include(
                        "~/Scripts/A.js",
                        "~/Scripts/B.js",
                        "~/Scripts/C.js"));

我的主布局页面上有一组:

@Scripts.Render("~/scripts/common")

在我的网页子集中使用了一个:

@Scripts.Render("Scripts/sectionCommon")

到目前为止一直很好,这很有效。

当我使用调试编译运行我的站点时,第一个包中的JS文件将作为单个脚本链接呈现给标记,而第二个包仍然是一个缩小的包:

<script src="/siteRoot/Scripts/jquery-1.11.1.js"></script>
<script src="/siteRoot/Scripts/jquery-ui-1.10.4.custom.min.js"></script>
<script src="/siteRoot/Scripts/jquery.validate.js"></script>

<script src="/siteRoot/Scripts/sectionCommon"></script>

有人知道为什么会这样吗?调试时有点痛苦。

1 个答案:

答案 0 :(得分:4)

在我写这个问题时想出来。以为我会回答它以防其他人咬人。两者之间的区别在于使用tilda获取站点相对URL:

@Scripts.Render("~/scripts/common")

@Scripts.Render("Scripts/sectionCommon")

这两个都按预期呈现脚本,但只有顶部脚本(使用站点相对URL)在调试中呈现出单个脚本引用。