2017-07-09 8 views
0

reduxストアに接続されているコンテナコンポーネントはどのコンポーネントにする必要があり、どのコンポーネントを無効にするべきかについてのガイドラインはありますか?reduxストアに接続されているコンテナコンポーネントとは何にすべきですか?

おそらく、どのような状態がアプリケーションレベルの状態である必要があり、どのような状態がコンポーネントレベルの状態である必要があるのか​​を尋ねる必要があります。

私はまだこれについて個人的にガイドラインはありませんが、これらの状態はアプリケーションレベルの状態の候補だと思います。

  1. 複数のコンポーネントによって共有される状態。
  2. うん...それはそうですね。

したがって、元の質問に戻って、複数のコンポーネントで共有されている状態のコンポーネントは、reduxストアに接続されたコンテナコンポーネントの良い候補ですか?

+0

グローバル状態にアクセスする必要があるコンポーネントはすべて接続する必要があります。グローバル状態に依存しないものは、接続する必要はありません。 – Li357

+0

ありがとう!だから、一般的に、グローバルな状態は、複数のコンポーネントや他の何かによってアクセスされているものですよね?ある状態がコンポーネントによってのみアクセスされる場合、状態はグローバル状態であってはなりませんか? – hytm

+1

はい複数のコンポーネントが同じグローバル状態にアクセスできます。状態が内部のものであり、入力値などの1つのコンポーネントに固有のものである場合、グローバル状態であるべきではありません。 – Li357

答えて

0

あなたのコンポーネントは、理想的には、小道具に基づいてUIをレンダリングするだけです。したがって、機能的なコンポーネントから始めましょう。ライフサイクルフックが必要な場合は、もちろん、クラスが必要ですが、状態でこれを行わないようにしてください。

コンポーネントの小道具を入力するには、コンテナが必要です。これは、コンポーネントの小道具にデータとマーシャリングをとるブラックボックスコンポーネントです。それはredux、あなたのAPI、graphql、または再構成からのHOCを使ってもデータを得ることができます。

関連する問題