复制数组后redux反应更新数组

redux react update array after copying array

我有一个问题,我遇到了复制后无法更新数组的问题。 如果我复制一个数组而不更新 id,当我在输入中键入内容时,文本将以与复制它相同的方式出现。

这是我的初始状态

const initialState = [
  {
    id: random numbers,
    options: [{ id: random numbers , value: '' },
    ],
  },
];

会有很多选择 我只想更新选项 id

这是我试过的

    case COPY_QUESTION: {
      const newArray = [...state];
      const copyQuestion = newArray[action.payload];
        copyQuestion.options.map((option) =>
          Object.assign({}, option, {
            id: random number,
          }),
        );
      
      return [...state, copyQuestion];
    }

感谢阅读我的问题。

这是由于call-by-reference造成的。 正如我在您的代码中看到的那样, 您正在复制数组的引用,这可能会在您键入时覆盖原始数组的详细信息。您可以使用 Javascript Object Prototype

复制原始数组的值

因此,您需要破坏数组或破坏重复数组中的引用。 示例

let A = [a,b,c]  //original Array
let B =  JSON.parse(JSON.strigify(A))  // duplicate Array