我正在使用redux reducer将对象添加到状态数组中。这是正常的,但是,对象被添加到数组的末尾。我已经搜索了高低,但无法弄清楚如何使用这种语法,而不是改变数组并将对象添加到数组的开头。
export default (state = [], action) => {
switch(action.type) {
case 'MOVIE_ADDED_TO_WATCHLIST':
return [
...state,
action.movie
];
}
...****rest of the reducer here****.....
答案 0 :(得分:8)
如果要使用spread运算符将项添加到数组的开头,只需在新值之后使用spread运算符。例如:
let a = [1, 2, 3, 4, 5];
let b = [0, ...a];
console.log(a);
console.log(b);
此外,您还可以使用.concat
:
var a = [1, 2, 3, 4, 5];
var b = [0].concat(a);
console.log(a);
console.log(b);
您可以看到此here的实际示例。