2016-04-06 4 views
7

私はReact + Reduxアプリケーションを構築していますが、別のコンテナ内のコンテナを使用することを検討しているところに私は です。 これが良いアプローチであるかどうか、私は自分自身に尋ねています。それは良い習慣ですか、または私たちは厳密に1コンテナのルールにいくつかのコンポーネントを従わなければなりませんか?reactx:containersコンポジション

+0

なぜ内部にコンテナが必要ですかコンテナ? –

+0

質問は、単に重要なプログラミングの概念であるカプセル化に関連しています。 Reduxでコンテナ内のコンテナを使用する方法を知ることで、プログラマは、実際に再利用可能なコンポーネントの縮尺や構成のアプリケーションを書くことができます。また、ReactのsetState()を使わずにReduxを使用する方法を理解する唯一の方法です。 –

答えて

15

私はpresentational-と、コンテナコンポーネントに関するDan Abramov's articleを引用してみましょう:

あなたには、いくつかのコンポーネントは、彼らが受け取る小道具を使用しますが、単にそれらを転送し、あなたはすべてのそれらの中間のコンポーネントを再配線する必要がないことに気づくとき子どもたちがより多くのデータを必要とするたびに、いくつかのコンテナコンポーネントを導入するのがよい時期です。このようにすると、ツリーの途中に無関係なコンポーネントに負担をかけることなく、リーフコンポーネントにデータとビヘイビアを得ることができます。

...必要があると感じる場合は、別のコンテナコンポーネント内にコンテナコンポーネントを置くことはまったく問題です。

1

"ダム"になっているコンポーネントと、アプリケーションを認識してコンテナになるコンポーネントを見つけるのは容易ではありません。私はそれが別のものでコンテナを使用することは問題/アンチパターンではないと思います。アプリケーションの一部が異なるページで使用されている場合は、コンテナとなり、接続して別のページやコンテナで使用することができます。この「コンテナコンポーネント」はこのアプリケーション固有のものです

関連する問題