1
考虑嵌套模板:转发模板参数和定义
Base.xhtml:
...
<h:outputText value="#{uiParamter}"/>
<ui:insert name="header"/>
... etc.
Layout.xhtml:
<ui:composition template="Base.xhtml">
...
<ui:insert name="content"/>
... etc.
</ui:composition>
当现在定义像模板客户端这个:
<ui:composition template="Layout.xhtml">
<ui:define name="header"> foo </ui:define>
<ui:define name="content"> foo2 </ui:define>
<ui:param name="uiParameter" value="foo3"/>
</ui:composition>
是否必须通过重新定义模板,将Layout.xhtml
中的<ui:param>
或<ui:define>
转换为Base.xhtml
模板。 e.g:
<ui:param name="uiParameter" value="#{uiParameter}">
<ui:define name="header">
<ui:insert name="header"/>
</ui:define>
人们还可以改写这个问题为:“做模板参数表现得级联?”