私はReactJSを学んで使用しています。多数のスレッドやブログの投稿を読み終えた後、私はReactJSのコンポーネント間で効果的なコミュニケーションを取ることと混同しています。親で完全な再レンダリングを行わずに2つの子コンポーネント間の通信を行います
私は親コンポーネント "A"を持っていて、多くの子コンポーネント "a"、 "b"、 "c"、 "d"、 "e"などを持っているとしましょう。私は "b"コンポーネントを再レンダリングしたい。
"a"と "b"は同じ親を持つので、この2つの間の通信媒体として親自体を使用することができます。しかし、ここで問題となるのは、親を通信媒体として使用して状態を変更し、再レンダリングをトリガーすると、すべてのコンポーネント "a"、 "c"、 "d"、 "e"私がそれを好きではない代わりに、 "b"コンポーネントだけを強制的に再レンダリングしたいのです。
これは可能ですか?どうすればこれを達成できますか?基本的には、パフォーマンス上の理由からこれを実行したいと考えています。
フラックス/ Reduxの通信にイベントバスのいくつかの種類を使用します。だから "a"はバスにメッセージを掲示し、気になる人(あなたの場合は "b")がそれに応答します。他は変わらない。あなたはFlux/Reduxを使うことができます(とにかく良い練習とみなされます)。あるいは、自分でバスを実装することもできます。バスはReactの[context](https://facebook.github.io/react/docs/context.html)で共有することができます。 –
Reduxを試してみることを強くお勧めします。 「純粋な」リアクションはあなたが投稿したもののような理由で、実世界のアプリでかなり速く/面倒なことになります。 –