2013-01-16 40 views
27

脚本文件名:捆绑脚本文件未呈现。

jquery.transit.min.js 

的文件是在脚本文件夹中,

bundles.Add(new ScriptBundle("~/bundles/jquery") 
     .Include("~/Scripts/jquery-{version}.js")); 

bundles.Add(new ScriptBundle("~/bundles/jqueryui") 
     .Include("~/Scripts/jquery-ui-{version}.js")); 

bundles.Add(new ScriptBundle("~/bundles/jqueryval") 
     .Include("~/Scripts/jquery.unobtrusive*", "~/Scripts/jquery.validate*")); 

bundles.Add(new ScriptBundle("~/bundles/jtransit") 
     .Include("~/Scripts/jquery.transit*")); 

在我View

@Scripts.Render("~/bundles/jquery","~/bundles/jtransit") 
@Scripts.Render("~/bundles/jqueryui") 
@Scripts.Render("~/bundles/jqueryval") 

渲染HTML

<script src="/Scripts/jquery-1.8.3.js"></script> 
<script src="/Scripts/jquery-ui-1.9.2.js"></script> 
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script> 
<script src="/Scripts/jquery.validate.js"></script> 
<script src="/Scripts/jquery.validate.unobtrusive.js"></script> 

jquery.transit.min.js未呈现。我错过了什么?

回答

47

我认为这将是因为你只有你的文件的.min版本。

从您的输出中,我可以看到您正在运行您的 网站的调试版本。我想这样的打包机正在寻找一个非缩小文件。

如果您要执行发布版本,那么它将被捆绑到OK中。

我建议获取非缩小版的传输文件和 ,包括在您的脚本文件夹中。如果没有,只需制作缩小版本的 副本,但文件名中没有.min。

+0

好赶上!谢谢 – Eon

+1

不能相信ASP.NET使用这个技巧。没有错误,只是失败而已! –

+0

是的,最小文件让我......多么偷偷摸摸的小动作。 – afreeland

15

MVC4开始,任何最小化版本的JavaScript文件或CSS文件都是在调试模式下被忽略。作为NGM建议,你需要从重命名文件,

jquery.transit.min.js 

到,

jquery.transit.js 

或者,你可以修改bundles.IgnoreList允许最小化文件被渲染,如图所示here

6

我不得不这样做在的Application_Start:

BundleTable.EnableOptimizations = true; 
-1

,并确保你没有使用IE 8捆绑在该浏览器失败,但我在Chrome或Firefox浏览器工作正常。

+0

捆绑包在服务器端创建,所以浏览器不应该有所作为 – trigras

0

在我的情况下,Visual Studio 2013只是认为捆绑css文件丢失,它在解决方案资源管理器中的文件名上显示黄色问号。

只需双击所有这些据说失踪文件和Visual Studio将找到它们,黄色问题将标记解雇和捆绑将再次开始像魅力一样工作。

2

在我的情况下,我试图使用一个脚本包和具有相同名称的样式包。

BundleConfig.cs:

bundles.Add(new ScriptBundle("~/bundles/custom") 
    .Include("~/Scripts/custom.js")); 

bundles.Add(new StyleBundle("~/bundles/custom") 
    .Include("~/CSS/custom.css")); 

_Layout.cshtml:

@Scripts.Render("~/bundles/custom") 
@Styles.Render("~/bundles/custom") 

这是行不通的。在配置中添加的最后一个包仍然存在,并且@Scripts.Render("~/bundles/custom")只是呈现一条空行。

我正在使用MVC 5.2.3。