尝试将捆绑应用于脚本,这些脚本以旧方式(手动)位于页面时工作正常。 这是捆绑注册:
Bundle sbundle = new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/menu-correction.js",
"~/Scripts/validation-rules.js",
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery-ui-{version}.js",
"~/Scripts/jquery.validate*");
bundles.Add(sbundle);
bundles.Add(new ScriptBundle("~/bundles/session").Include(
"~/Scripts/jquery.plugin.js",
"~/Scripts/jquery.countdown.js",
"~/Scripts/session-management.js"));
//others
然后在布局页面调用中: @ Scripts.Render("〜/束/ jqueryval&#34) @ Scripts.Render("〜/束/会话&#34) 但是当启用缩小功能时,我在chrome控制台中出现了这个错误:
此外,我可以在标签页中看到我的脚本"来源" Chrome开发人员工具 - 他们成功地缩小了。花了足够的时间来解决这个问题。这个错误的原因是什么? 提前谢谢。
答案 0 :(得分:1)
我提供的信息不足:Application_PostRequestHandlerExecute方法中有一些逻辑,它将某些标签直接写入响应流(js需要)。我注意到直接在响应流中用捆绑编写的标签实际上是在最小化的js文件的末尾写的。因此,语法被破坏而js文件不起作用(没有捆绑我的方法工作正常)。 解决方案:将我的逻辑从Application_PostRequestHandlerExecute转移到Application_AuthorizeRequest方法,该方法最初应位于此处。
<强>更新强>
好吧,标签生成逻辑完全从Application_PostRequestHandlerExecute方法中删除,因为现在我明白这是绝对错误的想法。