繁体   English   中英

了解 jsf ui:composition 的用途

[英]understand the purpose of jsf ui:composition

以下有什么用处?

<ui:composition template="template.xhtml">;

“在使用<ui:composition>的模板客户端页面中,标记边界之外的任何内容都将被忽略,并且不包含在呈现的输出中”(JavaServerFaces 2.0,完整参考,pg.61)

既然<ui:define>之外的所有东西都被忽略了,为什么要放任何东西呢? <ui:define>之外没有任何内容。

但是这样做,我得到的只是模板本身,只填充了一些“可变”部分。

这似乎不是什么大不了的事。 我不明白的另一件事是组合元素的模板属性是可选的。 没有模板引用的模板客户端代表什么?

以下有什么用处?

 <ui:composition template="template.xhtml">

有了这个,您可以声明使用具有占位符的基本模板来插入模板定义。 这比反过来做更有用。 例如,您需要在每个页面中一次又一次地包含 header、页脚和/或菜单。 使用模板,您无需执行此操作。 它只是在模板中。


“在使用<ui:composition>的模板客户端页面中,标记边界之外的任何内容都将被忽略,并且不包含在呈现的输出中”(JavaServerFaces 2.0,完整参考,pg.61)

既然外面的一切都被忽略了,为什么还要放任何东西呢? <ui:define>之外没有任何内容。

你不需要这样做。 你为什么要? 好吧,也许基本教程就是这样做的,但这只是为了演示目的。 “这不会包含在渲染的输出中”等等。 另一方面,如果您碰巧使用可视化编辑器,则将考虑<ui:composition>之外的内容。 另请参阅有没有办法在不构建整个项目的情况下运行 JSF 页面?


我不明白的另一件事是组合元素的模板属性是可选的。 如果没有对模板的引用,它代表一个模板客户端是什么?

一个简单的包含文件,您可以通过<ui:include>它。

也可以看看:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM