2012-09-17 2 views
3

나는 비주얼 스튜디오 2012 MVC 4를 사용하고, 내 _Layout.cshtml에, 나는 다음과 같은 한 :Scripts.RenderSection이 jqGrid에서 작동하지 않는 이유는 무엇입니까?

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="utf-8" /> 
     <meta name="viewport" content="width=device-width" /> 
     @Styles.Render("~/Content/css") 
     @Scripts.Render("~/bundles/jquery") 
     @Scripts.Render("~/bundles/jqueryui") 
     @Scripts.Render("~/bundles/jqgrid") 

     @RenderSection("head", required: false) 
    </head> 
    <body> 
     @RenderBody() 

     @RenderSection("scripts", required: false) 
    </body> 
</html> 

을하고 BundleConfig.cs에서 나는 트리플했습니다

public class BundleConfig 
{ 
    public static void RegisterBundles(BundleCollection bundles) 
    { 
     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/jqgrid").Include(
      "~/Scripts/jquery.jqGrid.min.js")); 
    } 
} 

이 체크하고 내 스크립트 폴더에는 실제로 jquery.jqGrid.min.js가 포함되어 있지만 포함되지 않습니다.

내 html로 헤드는 다음과 같습니다

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8" /> 
    <meta name="viewport" content="width=device-width" /> 
    <link href="/Viper/Content/css" rel="stylesheet"/> 

    <script src="/Viper/Scripts/jquery-1.8.1.js"></script> 

    <script src="/Viper/Scripts/jquery-ui-1.8.23.js"></script> 

</head> 

이 추가되지 않는 이유는 어떤 아이디어?

답변

7

debug = true 일 때의 기본 동작은 * .min.js를 무시하는 것입니다 (수정하려고하는 것입니다).

bundles.Add(new ScriptBundle("~/bundles/jqgrid").Include("~/Scripts/jquery.jqGrid.min.js")); 

에 :

지금은

이 할 수있는 가장 쉬운 것은 당신이에서 번들 정의를 변경하는 경우 jquery.jqGrid.js

+1

감사합니다. 예, 이것은 제거되어야하는 정말 이상한 기능처럼 보입니다. – Scottie

1

할 파일의 이름을 변경하는 것입니다
bundles.Add(new ScriptBundle("~/bundles/jqgrid").Include("~/Scripts/jquery.jqGrid.*")); 

그것은 해로울 것입니다.

디버깅 목적으로 jquery.jqGrid.src.js가 릴리스 구성에서 실행중인 응용 프로그램 중로드되는 동안 jquery.jqGrid.min.js가로드됩니다.