:Object.assign - ここ& Reduxの反応し使用した更新特定のプロパティ
マイState
がこれに似たものになりますについては
const tabsState = (state = initialTabState, action) => {
switch(action.type) {
case(ENABLE_TAB):
return (
Object.assign({}, state, action.payload)
);
default:
return state;
}
};
:
State : {
First : {
prop1 : "a",
prop2 : "b"
},
...
Last : {
prop1 : "c",
prop2 : "d"
}
}
をマイReducer
関数は次のようになりますaction.payload
、私はprop1
の新しい値を含むデータを送信したいだけです。 Object.assign
の私の理解は、sources
のパラメータは、小道具を更新するだけです、彼らは状態でオブジェクトを上書きしない、それは正しいですか?上記で
、私のaction.payloadは、次のようになります。
First : {
prop1 : "z"
},
Second : {
prop2 : "x"
},
...
それは、Stateオブジェクト内First
&以降のオブジェクトを上書きしているようです。つまり、Reducer
によって返された新しい州には、各オブジェクトの2番目の小道具がありません。 prop2
s
は、何か他のものにあなたのデータ構造を変更することを検討してください。たとえば、[この回答](http://stackoverflow.com/a/32921731/1297743)を参照してください。また、減速機を分割して、「第1」、「第2」などの特殊減速機を作成することもできます。 –