私はreactjsを使い始めたばかりで、コンポーネントを設計する正しい方法を見つけようとしています。私は、コンポーネント、小道具、州の概念を得ていますが、階層を設計する正しい方法で少し苦労しています。大規模な親データ構造を持つreactjsページコンポーネントを設計する賢明な方法
大きなオブジェクト配列によって駆動されるページがあります。言ってやるよ。
objArr = {
param1 : value1,
param2: value2,
dataArray: [
{ key: "keyvalue", a: "a", b: "b", c: "c" },
...
]
}
ページ全体がこのようになっている。このページは、dataArrayに対応する一連のUIコンポーネントを構築します。
UIのいくつかのアイコンがクリックされるたびに、いくつかの変更が必要になり、アイコンはこのdataArrayの値に対応します。 UIの動作に合わせてdataArrayの値が変更されるようにするにはどうすればよいでしょうか?逆も同様で、dataArrayで値が変更されるとUIが変化します。
「可能な限り無制限の状態でコンポーネントを作成する」を読んだことがあります。親コンポーネントレベルでこの処理をどのようにしてフローダウンさせるのですか?
コード例は必要ありません。私のReactJSコードを設計する方法のちょっとした指針は素晴らしく、私はコードを理解するでしょう。
はありがとう
場合は、そのこれらの種類Reduxや他のアプリケーション・ステート・ライブラリ(flux、mobxなど)の調査には時間がかかるかもしれません。それだけでなく、それはあなたのアプリケーションの状態をプロパティに渡すことですが、子コンポーネントが使用するものだけで十分です。 –
あなたがしたいのは、コンポーネントを「プレゼンテーションコンポーネント」と呼ばれる小さなコンポーネントに分割し、すべてのロジック(クリックハンドラ、状態処理など)を保持するコンテナコンポーネントを持ち、必要な情報のみを小規模なプレゼンテーションコンポーネントas @ erik-snは言った。 reduxの作成者であるDan Abramovには、同じテーマの[Reduxチュートリアル](https://egghead.io/lessons/javascript-redux-extracting-presentational-components-todo-todolist)のビデオがいくつかあります。アプリを還元する。 – dzv3