什麼是或可能是最佳實踐?JSF和PrimeFaces策略
- 使用標準JSF組件並在需要時通過PrimeFaces組件將它們組合起來(例如需要DHTML或AJAX組件時)
- 忘記所有JSF組件,並嘗試使用所有PrimeFaces組件儘可能
請解釋它,並告訴我你的經驗。
在此先感謝...
什麼是或可能是最佳實踐?JSF和PrimeFaces策略
請解釋它,並告訴我你的經驗。
在此先感謝...
PrimeFaces是你的AJAX框架,所以如果你需要發送一個Ajax請求,那麼使用PrimeFaces組件。
即使您不需要發送ajax請求,但仍然可以使用PF組件,如果您需要爲您的網頁提供一致性外觀。例如,h:commandButton
和p:commandButton
。使用p:commandButton
如果u需要發送Ajax請求,但你也可以做到這一點
<p:commandButton ajax="false" action="Your Action here"/>
這將提供相同的結果:
<h:commandButton action="Your Action here"/>
但這樣一來,就可以提供一致的外觀相同整個頁面上的按鈕。
PrimeFaces沒有替代h:panelGrid
,h:panelGroup
,h:inputText
,h:outputText
...
依賴於唯一的功能需求。如果您已經使用PrimeFaces,並且您希望實現的任何功能都可以使用PrimeFaces組件更好/更輕鬆地實現,那就使用它。
選項1接近,但選項2過度。 PrimeFaces例如沒有<p:form>
,<p:panelGroup>
,<p:outputText>
什麼的。
隨着Primefaces這是很容易得到一個一致的外觀爲您的應用程序,因爲它帶有的ThemeRoller CSS框架。你可以輕鬆切換設計。儘管如果您應用正確的css類,讓普通的jsf組件看起來像primefaces組件並不困難。
我認爲primefaces是一個很好的組件庫。然而,一些組件仍然是越野車(例如日期選擇器)。因此,如果您在primefaces組件中遇到一些意想不到的行爲,那麼擁有jsf後備(或者來自另一個組件庫或jquery的替代品)總是很好。
我沒有混合不同組件庫的經驗。知道它們會有趣,它們是如何相互作用的。但這將是另一個問題的主題...
PF 3.0有p:outputText,p:inputText :) – Selvin 2011-03-30 06:03:22
@selvin:PF3.0 M1甚至還沒有發佈。穩定版本需要幾個月才能出來。你可以嘗試每晚構建,但主要是測試和玩耍。我不建議將它用於當前的工作項目。 – 2011-03-30 15:32:55