2

我有f:event一个h:panelGroup带有rendered="false"属性的组件。我希望 f:event 侦听器仅在块被渲染时才被触发,否则。我的代码如下:

 <h:panelGroup rendered="false">
      <f:event type="preRenderView" listener="#{listRetriever.retrieveFollowers()}"/>
      <ui:repeat value="#{listRetriever.list}" var="person">
             #{person}<br/>
      </ui:repeat>
 </h:panelGroup>

我该如何正确实施呢?

4

1 回答 1

4

还有另一个事件来管理组件渲染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>

于 2012-04-23T09:30:17.727 回答