2011-07-29 2 views
0

내 main.gsp 파일을 내 페이지 list.gsp에 포함시키려는 유스 케이스가 있는데, 이는 쉽게 수행 할 수 있습니다.하나의 js 파일을 제외하고 내 메인 페이지의 모든 것을 포함하고 싶습니다.

<meta name="layout" content="main"/> 

하지만 문제는 jQuery 1.6 버전을 가지고 있지만 jQuery.js라는 파일에 대한 대안을 원한다는 것입니다. 주 레이아웃과 충돌 및 문제를 추가 할 때도 마찬가지입니다. 위가 작동하지

<script type="text/javascript" src="${resource(dir: 'js/jquery', file: 'jquery.js')}"></script> 

처럼. 그래서 내가 근래 어떤 e는 수동으로 내 list.gsp 페이지에 포함될 파일을 차별화하거나이 jQuery1.6.js 파일을 제외하고 main.gsp 페이지에있는 모든 것을 포함 할 수있는 방법이 있습니까 ?? 더러운 방법이 될 수

답변

0

사전에

내가 어떤 다른 제안에 열려입니다 .. 덕분 페이지 속성을 검사하는 경우 블록에서 스크립트 가져 오기를 넣어, 당신은 list.gsp 세트에 해당 재산. 의 list.gsp에서

:

<body fooProperty="1"> 

그리고 main.gsp에서

:

<g:if test="${pageProperty(name:'body.fooProperty) ?: false}"> 
<%--includes you want for list.gsp here--%> 
</g:if> 
<g:else> 
<%--normal script link -%> 
</g:else> 

강제 경우/다른 사람이 있어요,하지만 할 수있는 많은 다른 방법이 밤은 모든 단일 페이지로드에 그것. 숨겨진 페이지 속성을 설정하고 javascript 자체에서 1.6 가져 오기를 재정의하는 로더를 작성할 수 있습니다. 당신의 main.gsp

${if(!params.jqueryVersion) params.jqueryVersion=''} 
<script type="text/javascript" src="${resource(dir: 'js/jquery', file: 'jquery${params.jqueryVersion)}.js')}"></script> 

및 목록 컨트롤러 대가로

0

넣어

[myInstancesList:list, jqueryVersion:'-1.4.2'] 
관련 문제