【发布时间】:2017-05-04 13:56:58
【问题描述】:
在我的 redux reducer 中,我两次更新专辑列表。我希望第二个列表覆盖提供的第一个列表,但是,这不起作用,并且专辑第二个调用都添加到第一个调用中。
下面的展开运算符有什么我做的不对吗?请在下面查看我的减速器。
export default (state = [], action) => {
switch(action.type) {
case 'GET_ALBUM_NAME_SUCCESS':
return [
...state,
...action.albums.map(album => {
const newAlbum = {...album};
delete(newAlbum.selections);
return newAlbum;
})
];
default:
return state;
}
【问题讨论】:
-
为什么你的状态是一个数组?
-
我认为您确实在寻找
return action.albums.map(({selections:_, ...newAlbum}) => newAlbum);。不要使用delete!
标签: javascript reactjs ecmascript-6 redux