私の設定はReactJS + Reduxです。reduxコンポーネントをリモートコントロールする方法
私は名前のギャラリーのコンポーネントを持っている:
- Gallery.js:ReactJSコンポーネント
- GalleryContainer:Reduxのコンテナ私は遠く(外部からのコントローラで選択したタブを制御したい
コンポーネント階層内で離れている)。私は、私のappState減速にsetGallerySelectedTabという名前のアクションの作成者を変数を追加し、私はcomponentWillReviewPropsに新たに到着した小道具に耳を傾け、状態のselectedTabにそれらを比較します。私が制御したい感じが新しい減速プロパティ、アクションの作成者とwillReceiveProps比較ですを作成するために私を必要としコンポーネントの外観の各側面&:
- ハードワーク:私は、このアプローチに関する二つの開放問題があります。
- クラッタリング:多くのsetStateが各アスペクト用です。それはそれがコンポーネントをより具体的に感じます。コンポーネントのコードを読んでいる人は、そのコンポーネントが何をしているのかを知りたいと思っています。そして今、彼は外部コントロールを扱う多くのコードを見ています。
コードをエレガントに保ちながらreduxコンポーネントを制御する方法を知っている人はいますか?
あなたは正しいです。他のactionCreatorsを使用していますが、新しいアクションクリエーターとしてパッケージ化することができます。 – Guy
私はまだ、小道具の変更を聞くことなくコンポーネントを制御する方法があることを望みます。例えば、コンポーネントの選択されたTabを遠くのシステムの部分から変更したい場合は、ルックアンドフィールを制御するために小道具の変更を聞いて、これを行うにはエレガントな方法であるのだろうか... – Guy
申し訳ありません。私はあなたの答えが文脈から外れていることを理解することだけを明確にするために質問を変更しました。謝罪します。 – Guy