Ui:包含和基于xhtml的标记(源代码为elt的标记)对我来说似乎非常相似。两者都允许重用一段标记。但我相信每个人都应该有一些理由。请有人简单解释一下吗? (我猜如果我阅读完整的facelets教程,我会学习它,但我现在没有时间去做,所以请不要链接到冗长的文档:)facelets的ui:包含和自定义标签有什么区别?
0
A
回答
3
它们非常相似。差异主要是句法。
经过观察他们的使用一段时间后,似乎惯例是你只在一种情况下使用的片段是ui的候选者:include,而你更经常重用并具有更独立语义的片段是候选者为自定义标签。
E.g.
单个视图可能有一个包含三个部分的表单;个人资料,工作历史,偏好。如果页面变得笨重,可以将它分成更小的部分。 3个部分中的每一个都可以移动到他们自己的Facelet文件中,然后将其用户添加到原始文件中。
另一方面,您可能有一种特定的方式在应用程序中的许多视图上显示图像。也许你在它周围画一条线,在它下面有一些文字等等。不要一遍又一遍地重复这个,你可以再次将它抽象成它自己的Facelet文件。虽然你可以使用ui:包含它,但大多数人似乎更喜欢在这里创建一个标签,所以你可以使用例如<my:image src="..." />
在你的Facelets上。这看起来更好(更紧凑,更直接与其他组件)。
在与JSF 2.0捆绑在一起的Facelets版本中,简单标签可以被composite components
取代。这是第三种变体,乍一看看起来很像自定义标签,但这些东西在技术上是不同的,因为它们不仅仅是一个包含,而是代表具有声明属性的真实组件,能够附加验证器等。
相关问题
- 1. 包含标签和包含函数有什么区别?
- 2. JSF和Facelets有什么区别?
- 3. JSP和Facelets有什么区别?
- 4. 自定义包含标签
- 5. 标签有什么区别
- 6. asp:label和HTML标签有什么区别?
- 7. 包含标记和embed标记在expressionengine中有什么区别?
- 8. 在</body>标签之前包含JavaScript和在</html>标签之前包含JavaScript有什么区别?
- 9. Eclipse支持自定义facelets标签
- 10. Django:内置包含标签与自定义包含标签
- 11. 包含iostream和包含iostream.h有什么区别?
- 12. HTML中的object标签和include标签有什么区别?
- 13. 存在和定义有什么区别?
- 14. 标签栏控制器和标签栏有什么区别?
- 15. 脚本标签和“<%....%>”标签有什么区别?
- 16. Django自定义包含标签
- 17. Java Facelets中的<h:head>和<head>有什么区别?
- 18. 别名和标签有什么区别? (一般和在git中)
- 19. GAS中的脚本和自定义函数有什么区别?
- 20. #,##和#,#在C#中的自定义格式有什么区别?
- 21. 编写自定义方法和自定义过滤器有什么区别?
- 22. 自定义segue和模态segue之间有什么区别
- 23. 产品属性和自定义选项有什么区别?
- 24. hg标签和hg书签有什么区别?
- 25. 包含和必需的文件在php中有什么区别?
- 26. 标签和标签部件之间的区别是什么
- 27. 什么是JSTL?什么是JSP标签库?有什么区别?
- 28. Python和Java中import语句的含义有什么区别?
- 29. Docker包和docker-compose有什么区别?
- 30. 库和包有什么区别?
感谢解释花花公子。 – 2011-07-27 17:57:10