在 useState 中保存的数组中包含的一系列对象中增加键的值 (+1)
Posted
技术标签:
【中文标题】在 useState 中保存的数组中包含的一系列对象中增加键的值 (+1)【英文标题】:Increment a key's value (+1) within a series of objects contained in an array that's held in useState 【发布时间】:2020-09-18 12:00:57 【问题描述】:const = [items, setItems] = useState([ name: "foo", wait: 1 , name: "bar", wait: 5 ])
对于项目中的所有对象,我需要将键的值 wait 增加 1。
这是我目前的尝试......
setItems(items.map(e => [...e, e.wait++]))
我遇到了一些疯狂的错误...我不确定是否应该使用扩展运算符或与我所拥有的类似的东西。
【问题讨论】:
【参考方案1】:map
应该返回对象而不是数组。
const items = [
name: "foo", wait: 1 ,
name: "bar", wait: 5 ,
];
const updated = items.map((item) => ( ...item, wait: item.wait + 1 ));
// setItems(items.map(item => (...item, wait: item.wait + 1)));
console.log(updated);
【讨论】:
以上是关于在 useState 中保存的数组中包含的一系列对象中增加键的值 (+1)的主要内容,如果未能解决你的问题,请参考以下文章