私はreactxでいくつかのアプリを試しています。状態のネストされた配列の更新(プッシュ、削除、更新)に問題があります。React redux - 状態でネストされた配列を更新する
私はこのようなサービスと呼ばれるいくつかのオブジェクトがあります。すべてのプロパティが最後と同じ値を持って問題を発生プロパティコレクションと減速して(コレクションにプロパティを追加した場合の)私はどのような
{
name: 'xzy',
properties: [
{ id: 1, sName: 'xxx'},
{ id: 2, sName: 'zzz'},
]
}
を私は最近追加されました - >追加されたプロパティオブジェクトはサービスプロパティコレクションにありますが、アクションはこのコレクションのすべてのプロパティのすべての値を置き換えます。 私の減速:私は不変ヘルパーライブラリといくつかの解決策を試してみました、それは同じ問題が発生
export function service(state = {}, action) {
switch (action.type) {
case 'ADD_NEW_PROPERTY':
console.log(action.property) // correct new property
const service = {
...state, properties: [
...state.properties, action.property
]
}
console.log(service); // new property is pushed in collection but all properties get same values
return service
default:
return state;
}
}
:私はこれを取得する上で、私は一例に新しいプロパティ{ id: 1, sName: 'NEW'}
を追加した場合たとえば、
export function service(state = {}, action) {
case 'ADD_NEW_PROPERTY':
return update(state, {properties: {$push: [action.property]}})
default:
return state;
}
を状態:
{
name: 'xzy',
properties: [
{ id: 1, sName: 'NEW'},
{ id: 1, sName: 'NEW'},
{ id: 1, sName: 'NEW'}
]
}
誰かが助けることができますか? :)
を使用することをお勧めしたい、減速が右に見えます。 Reduxへの接続とそれを使用してコンポーネントを提供することができますか? – Okazari
私のコンテナのreduxへの接続が機能しています。どこか私はこれを呼び出す: 'ディスパッチ(addNewProperty(プロパティ))'とアクション: 'エクスポート関数addNewProperty(プロパティ){ 戻り値{ タイプ: 'ADD_NEW_PROPERTY'、 プロパティ } }' 私はこのことを考えます(console.log(action.property) ' – chobotek