html子元素中的grails/sitemesh布局集属性(ng-app)

Nix*_*Nix 3 grails sitemesh angularjs

我有几页共享布局.我正在添加一些将使用角度的新页面.我试图找出如何设置模板,以便在子页面中我可以添加到html元素属性a ng-app='xyz'.

例如

_layout.gsp

<html lang="en"  >
Run Code Online (Sandbox Code Playgroud)

会喜欢做child.gsp -

<html ng-app='angularApp'>
<meta name="layout" content="layout">
Run Code Online (Sandbox Code Playgroud)

但是obv,那是行不通的.有没有简单的方法来实现这一目标?

有没有办法使用内容模式?我试过了...

//child.gsp
<meta name="angularApp" content="angularApp"/>

//layout.gsp
<html lang="en" <%  meta(name: 'angularApp')? "ng-app='${meta(name: 'angularApp')}'":"" %> >
Run Code Online (Sandbox Code Playgroud)

但它只会导致什么......

Aiv*_*ras 9

在您的视图使用的_layout.gsp中:

<html lang="en" ${pageProperty(name:'page.ngapp')} > ...... </html>
Run Code Online (Sandbox Code Playgroud)

然后,您将能够在使用先前布局的后续gsp视图中更改值:

<content tag="ngapp">ng-app='angularApp'</content>
Run Code Online (Sandbox Code Playgroud)

编辑:在我使用的较新版本的grails(2.4.4)中,我必须指定属性 - 没有引号的值组合:

<content tag="ngapp">ng-app=angularApp</content>
Run Code Online (Sandbox Code Playgroud)

最后,渲染的视图将包含您想要的任何内容:

<html lang="en" ng-app="angularApp" > ..... </html>
Run Code Online (Sandbox Code Playgroud)