0

私が構築しているアプリには、アプリの後続のすべてのビューに影響を与えるルート クライアント オブジェクトがあります。ユーザーがクライアントを変更し、すべてのタブをリセットできるようにしたい。つまりpopToTop()、クライアントを適切に更新できるようにしたい。

4 つのタブを持つTabBarIOSコンポーネントがあり、各タブはNavigatorIOS後続のコンポーネントを管理するListViewコンポーネントです。popToTop()クライアントの変更に基づいて、すべての NavigatorIOS コンポーネントを強制的に再レン​​ダリングするにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

1

簡単な方法の 1 つは、イベント エミッターを使用することです。イベント エミッターを作成し、コンポーネントを所有するNavigatorIOSコンポーネントに渡します。所有者はref、各コンポーネントの prop を使用しNavigatorIOSて、各ナビゲーターへの参照を取得できます。

次に、所有者はリスナーをイベント エミッターに追加しpopToTop()、リスナーが呼び出されたときに各ナビゲーターを呼び出すことができます。次に、適切なときにイベントを発行するだけです。

于 2016-08-12T00:06:33.247 に答える