私はReactで常にあなたの状態を不変に保ちたいと思います。私のアレイが私のReducerで突然変異している理由を理解できません
多分私の状態と不変性の私のログインにいくつかの欠陥があります。私が間違っている場合は私を修正しますが、州のオブジェクトの中核は減速家の権利で管理されますか?例えば、state
のusers
をリストにしたいのであれば、それを配列に整形したいと思うでしょう。
したがって、inititalState = []
と設定しました。ここで私は私が困惑していると信じています。私はこれを正しく理解しているのか、私は考えていないのか分かりません。
以前私がやっていた、
case GET_USERS:
return [...state,
Object.assign({}, action.payload)
];
しかし、私はそれが私が変異していたオブジェクトまたはキーではありません考慮return [...state, ...action.payload];
にそれを変更することをお勧めしました。今私は、return [...state, ...action.payload];
がを置き換えて、action.payload
,であると仮定しますが、すべてではありません。
私がしようとするユーザーをフィルタするたびに...それは単に変異しとはthis.props.users
にユーザーオブジェクトをプッシュし、私はReduxのドキュメントを追跡するために私の最善をしようとしていますので、どのようにについて混乱しています。
あなたのフィルタリングユーザーについては言及していますが、コードには '.filter()'が表示されません。 –
フィルタについては、単に検索クエリを使用しています。これはほんの一例ですが、私が努力しているのはこのようなものです。 'this.getUsers(searchQuery){this.props.getUsers(searchQuery).bind(this))}'。そして、私がしているのは、単純に 'this.props.users.map(....' – dsomel21
)をマッピングすることです。フィルタリングに関して既に試した内容を見ずに問題を特定することは非常に困難です。あなたの 'GET_USERS'レデューサーは' [... state、... action.payload] 'を返します。アクションが呼び出されるたびに' action.payload'を 'state'に追加し続けます。あなたのコード。 –