我有这个initialStore:
const initialState =
{
0:{
screen_name: '1',
props: null,
},
1:{
screen_name: '2',
props: null,
},
2:{
screen_name: '3',
props: null,
},
3:{
screen_name: '4',
props: null,
},
4:{
screen_name: '5',
props: null,
},
}
我想知道如何修改值state.0.screen_name: 1
,同时使用ES6保留原始状态的其余部分?
这是我到目前为止采用的方法:
export const navigationReducer = createReducer(initialState, {
[types.CHANGE_SCREEN_EXPERIMENTAL](state,action){
return{...state[action.id], screen_name:action.screen_name, ...state
};
}
}, );
但是,这会返回:
action.id
是0
,它应该修改state[0]
元素,但是,它复制了它们的元素,修改它们并将它们放在状态对象本身而不是{{1对象。
期望的结果:
state[0]
我不希望navigationReducer:{
0: {
props: null,
screen_name: "ad"
}
1:Object
2:Object
3:Object
4:Object
}
和screen_name
超出这些对象(0,1,2,3,4)。
任何想法都很受欢迎。