gpt4 book ai didi

redux - Redux 状态下的数组列表

转载 作者:行者123 更新时间:2023-12-04 22:11:00 27 4
gpt4 key购买 nike

这是一个关于 Redux js 中状态的问题。我在该州有一个数组列表:

{
list: list
}

根据 Redux 文档,我不应该修改 reducer 中的状态。我想在列表中添加一个新项目。我应该克隆列表,还是简单地将新项目附加到列表中:
let newList = state.list;
newList.push(newItem);
return {
list: newList
}

上面的代码实际上是修改了原来的状态,因为newList和“state.list”是同一个列表。这是一个好的做法,还是我应该使用 immutableJS 来克隆列表?

最佳答案

您正在此处更改列表并返回相同的引用。我相信像下面这样的东西应该制作一个新副本

return { list: [...state.list, newItem] }

使用 immutableJS 不是强制性的。但你需要确保不要改变状态。

查看 deep-freeze 库以确保您的状态未被编辑。

这个来自 Dan(redux 的创建者)的 video 也应该有所帮助

关于redux - Redux 状态下的数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34616733/

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