当我们不知道数据的嵌套级别时,如何在react / redux中更新reducer状态属性中的数据?

问题描述 投票:0回答:2

我有一个名为“属性”的数组或对象

此属性数组具有以下格式的对象:

{
  "some-unique-key-A": {
    name:"someName1",
    value: {
      "some-unique-key-B": {
        name:"someName11",
        value : "someValue2"
      }
    }
  }
}

在这里,我们不知道键值对的嵌套级别是什么。我们只知道一件事,数据要更新密钥:“some-unique-key-X”

在这种情况下,我们如何可以无限地更新x级嵌套数据?

javascript reactjs redux react-redux
2个回答
0
投票

使用平坦的一级道具状态!不可变的不容易递归,用一级标准化你的状态,易于连接;)


0
投票

这就是我解决这个问题的方法。我创建了一个递归函数,它将接受某个对象的“深拷贝”(不是浅拷贝)和需要更新值的唯一键。它对给定的键进行更新,它返回更新的对象以存储为等待结果的先前递归对象的值的值。最后它只是用新的状态替换原始状态的对象。我不知道它是否会改变状态(也许它会变异),但它确实有效。

© www.soinside.com 2019 - 2024. All rights reserved.