2014-12-22 3 views
0

프런트 엔드 자바 스크립트에서 밑줄 템플릿으로 사용할 정적 HTML 파일을 가져와야합니다. 나는 운없이 다음을 시도했다.Grails에서 HTML 템플릿 가져 오기

<link rel="import" href="${resource(plugin: 'my-app-name', dir: 'tpl', file: 'foo.html')}"/> 
<g:external dir="tpl" file="foo.html" type="html" /> 

파일은 web-app/tpl/foo.html에있다.

궁극적 인 목표는 새로운 HTML 가져 오기 구문을 사용하여 JavaScript를 통해 파일 내용에 액세스하는 것입니다.

답변

0

다음 솔루션이 가장 적합한 솔루션인지 잘 모르겠지만 다음은 저에게 도움이되었습니다. UrMappings.groovy : static excludes = ['tpl/foo.html']. 이로써 page.gsp <link rel="import" href="${resource(plugin: 'my-app-name', dir: 'tpl', file: 'foo.html')}"/>에서 링크 태그가 작동하게되었습니다.

0

왜 파일이 ​​web-app/tpl입니까? grails-app/views/tpl/

  1. 이동을 :

    다음은 해당 템플릿을 가져 오기 위해 할 수있는 일입니다.

  2. 파일 이름을 _foo.gsp으로 변경하십시오.
  3. 보기에서 <g:render template="/tpl/foo" />을 사용하면 해당 HTML을 가져올 수 있습니다.

렌더 태그 here에 대해 자세히 알아보십시오.

+0

안녕하세요. Grant, 답장을 보내 주셔서 감사합니다. 백본 (JavaScript) 용 Underscore 템플릿이기 때문에 GSP를 사용하지 않습니다. –

0

메타 태그를 사용할 수도 있습니다. 이름 귀하가

<g:layoutHead/> 

<g:layoutBody/> 

을 :

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

그리고 main.gsp 그쪽에서

는 Grails의 태그를 사용할 수 있습니다 main.gsp보기/레이아웃 /에 있어야합니다 그 layoutHead이 레이아웃에 페이지의 머리를 삽입 이해할 수 있습니다. 레이아웃 본문을이 레이아웃에 페이지 본문을 삽입합니다.

+0

답 해 주셔서 감사합니다. Koloritnij. 내 질문에 언급했듯이이 목적은 새 HTML 가져 오기 구문을 사용하여 밑줄 템플릿을 가져 오는 것입니다. 동일한 앱에서 GSP 뷰를 많이 볼 수 있지만 HTML의 새로운 기능을 선보일 수있는 기회입니다. –