0

に を登録しSystemEventListenerましたPreRenderViewEvent。その目的は、UI ロール マップに基づいて、一部のコンポーネントをレンダリング --> false に設定することです。ページが初めてロードされるとき、UiViewRootI get fromevent.getSourceには正しい viewId がありますが、子がありません。後続の呼び出しでは、ページからイベントが呼び出されるたびに、 にデータUiViewRootが取り込まれ、リスナーが期待どおりに動作します (目的のコンポーネントがページから消えます)。

なぜそのように機能するのかについての洞察はありますか?PreRenderViewEventの予想される動作は、リスナーが呼び出される前にコンポーネント ツリーを構築することだと思いました。

(VDLを無効にしてMojarraで実行されているps)

4

0 に答える 0