React/Redux - 使用扩展运算符将对象添加到数组的开头
Posted
技术标签:
【中文标题】React/Redux - 使用扩展运算符将对象添加到数组的开头【英文标题】:React/Redux - Add object to start of array using spread operator 【发布时间】:2017-06-28 20:40:48 【问题描述】:我正在使用 redux reducer 将对象添加到状态数组。这工作正常,但是,对象被添加到数组的末尾。我搜索了高低,但无法弄清楚如何使用这种语法,不改变数组并将对象添加到数组的开头。
export default (state = [], action) =>
switch(action.type)
case 'MOVIE_ADDED_TO_WATCHLIST':
return [
...state,
action.movie
];
...****rest of the reducer here****.....
【问题讨论】:
【参考方案1】:如果您想使用扩展运算符将项目添加到数组的开头,只需在新值之后使用扩展运算符即可。例如:
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 的工作示例。
【讨论】:
以上是关于React/Redux - 使用扩展运算符将对象添加到数组的开头的主要内容,如果未能解决你的问题,请参考以下文章
react+redux官方实例TODO从最简单的入门-- 改
React - 没有 Redux 的可扩展架构(MVC + DDD 方法)