我在f:event
组件中h:panelGroup
rendered="false"
属性。我希望只有在不以其他方式呈现块时才应触发f:事件侦听器。
我的代码如下:
<h:panelGroup rendered="false">
<f:event type="preRenderView" listener="#{listRetriever.retrieveFollowers()}"/>
<ui:repeat value="#{listRetriever.list}" var="person">
#{person}<br/>
</ui:repeat>
</h:panelGroup>
我如何以其他方式正确实现?
答案 0 :(得分:3)
还有另一个事件来管理组件呈现preRenderComponent
:
<h:panelGroup rendered="false">
<f:event type="preRenderComponent" listener="#{listRetriever.retrieveFollowers()}"/>
<ui:repeat value="#{listRetriever.list}" var="person">
#{person}<br/>
</ui:repeat>
</h:panelGroup>
在呈现整个视图之前处理 preRenderViewEvent
。
preRenderComponentEvent
,就在呈现包含<f:event>
的组件之前。