我的组件的状态是一个对象数组:
this.state = {
userFavorites: [{id: 1, title: 'A'}, {id: 2, title: 'B'}]
}
每次单击按钮时,我都需要用另一个对象更新我的状态,就像我在上面的状态中所拥有的那样;例如:{id: 3, title: 'C'}。
如果我简单地连接它们并设置状态,最后一个对象会不断被添加的对象更改。
这里需要展开运算符吗?
最佳答案
你应该这样做。下面是最推荐的在 React 中将值或对象推送到数组的方法
this.setState( prevState => ({
userFavorites: [...prevState.userFavourites, {id: 3, title: 'C'}]
}));
要推送到数组的开头,请这样做
this.setState( prevState => ({
userFavorites: [{id: 3, title: 'C'}, ...prevState.userFavourites]
}));
关于javascript - 将带有 setState() 的对象添加到对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52954908/