我有多个模板,这些模板之间只有少量容器不同。最复杂的一个包含所有其他所有容器的超集,从而避免创建多个模板,我按以下格式创建了最复杂的模板
<ui:insert name="container1">
some layout stuff (div and all)
<ui:insert name="container1Content">
</ui:insert></ui:insert>
为每个容器和内容定义嵌套插入。
现在根据需要在客户端模板中 我关掉了不需要的容器
<ui:define name="container1/>
否则,如果需要容器,只需将内容定义为
<ui:define name="container1Content">doSomething</ui:define>
如果您发现此方法有任何问题,任何潜在问题或类似情况的替代方法,请与我们联系。
非常感谢。
麦迪
答案 0 :(得分:1)
Facelets的UI Insert标签是模板标签,因此您可以正确使用它。
在之前的项目中,我使用Facelets实现了多个布局,并使用ui-insert插入了多个占位符,这允许使用这些布局的应用程序自定义其部分(例如,修改页面标题,在头部插入自定义内容)的文件,......