可能重复:
以上可能的副本不符合我的需要。
以下是用于存储为对象数组的 redux reducer 代码:
case 'ADD_ITEM':
return {...state, elements:[...state.elements, action.appElements]}
action.appElements
包含:
{id: '9aq05d', width: '100',height: '225'}
存储的对象数组如下所示:
elements: {
0: {
id: 9aq05d,
width: '100',
height: '225',
}
1: {
id: 8lk65f,
width: '200',
height: '787',
}
}
但我需要将值存储为键值对,如下所示:
我需要 id作为密钥。
elements: {
9aq05d: {
id: 9aq05d,
width: '100',
height: '225',
}
8lk65f: {
id: 8lk65f,
width: '200',
height: '787',
}
}
如何在redux商店中存储这种键值对。?
先谢谢..
答案 0 :(得分:0)
使用对象传播而不是数组传播。
case 'ADD_ITEM':
return {
...state,
elements: {
...state.elements,
[action.appElements.id]: action.appElements
}
}
但请记住,不保证对象中键的顺序。