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