gpt4 book ai didi

javascript - 如何迭代对象数组并更改 redux 中的属性?

转载 作者:行者123 更新时间:2023-11-30 14:04:16 24 4
gpt4 key购买 nike

我的状态下有这个数组:

state:{     
items:[{id:0},{id:1},{id:2},{id:3}]
}

我能做到: 我可以删除这些对象之一,例如第二个,数组将是这样的:

 items:[{id:0},{id:2},{id:3}]

我想做什么(我需要帮助才能做到)

我想遍历数组并将 id 设置为数组中它自己的索引位置,变成这样:

 items:[{id:0},{id:1},{id:2}]

因此,根据其新的索引位置,Id:2 和 Id:3 的对象将分别设置为 Id:1 和 Id:2。

我怎样才能实现它?

我在 reducer 中使用以下代码来删除所需的对象:

if(action.type==='deleteItem'){
return{
...state,
items:[
...state.items.slice(0,action.index),
...state.items.slice(action.index+1),
]

}
}

我如何实现它以根据新的索引位置更改数组中每个对象的 Id 属性?

谢谢大家的关注!

最佳答案

您可以在删除一项后映射结果数组,如下所示:

return {
...state,
items: [
...state.items.slice(0,action.index),
...state.items.slice(action.index + 1),
].map((item, index) => ({ ...item, id: index }))
}

关于javascript - 如何迭代对象数组并更改 redux 中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55748776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com