2016-07-04 30 views
0

フラックスチュートリアルでは、「アプリケーション状態は店舗でのみ維持されています」と表示されています。Flux:可変数の反応成分のためのストアを作る方法?

短いバージョン:私はアプリケーション内に可変数のコンポーネントを持っており、それぞれのコンポーネントは状態を保持しています。ここで店舗をどうやって使うのですか?私はコンポーネントごとに1つのストアが必要なようです。

ロングバージョン: 私は、ノードの可変数(ちょうど私は任意のツリーを作成し、HTMLでそれを視覚化することができます基本的にアプリ)とテキスト要素のツリーを作りたかったです。

{ children: [], // children are trees. 
parent: someParent } 

しかし、私のツリー内の各サブツリーは状態を持っていることを考えると、私がサブツリーごとに1つのストアが必要になりますことが表示されます:

私の現在のアーキテクチャが反応のツリーの要素を持って、状態を維持!このコードを構成する正しい方法は何ですか?

答えて

1

いいえ、状態を1つのコンポーネントに保ちます。他のすべてのコンポーネントは、そのデータを小道具の形で取得する必要があります。

さらに、状態を保持するコンポーネントは状態を認識すべきではありませんが、保持するためにはストアを使用する必要があります。一般に、状態について知っているこれらのタイプのコンポーネントは、「コンテナコンポーネント」と呼ばれます。状態を知らず、小道具でデータを受け取るコンポーネントは、「プレゼンテーションコンポーネント」(または「ダムコンポーネント」)と呼ばれます。ここで続きを読む:http://redux.js.org/docs/basics/UsageWithReact.html

0

使用Reduxのアーキテクチャ

あなたのコンポーネントに小道具を渡すために、グローバル

使用コンテナコンポーネントと減速をあなたの状態を保ちます。

http://redux.js.org/docs/api/bindActionCreators.html

+0

詳細を編集してください。コード専用と「試してください」の回答は、検索可能なコンテンツが含まれていないため、推奨されません。なぜ誰かが「これを試してみる」べき理由を説明しません。私たちはここで知識のためのリソースとなるよう努力しています。 – abarisone

関連する問題