尝试更新对象内部对象中的数组。反应,使用状态

Trying to update an array in an object inside of an object. React, useState

我有一个如下所示的 onChange 方法:

const onChangeEnableWhenValueCalculation = i => (event) =>{
      setItem({
        ...newItem,
        enableWhen: [
          {
           linkId: newItem.enableWhen[i]?.linkId,
           operator: newItem.enableWhen[i]?.operator,
           valueCalculation: event.target.value,
          }
        ],
      });
  }

我想用 event.target.value 更改 valueCalculation 但在 enableWhen 内的指定索引处。

如何在对象内、数组内、另一个对象内的特定索引处设置此键的值?感谢任何帮助。

如果我理解正确的话,我会这样做:

let enableWhen = [...newItem.enableWhen];
// replace the element at index i with the updated item
enableWhen.splice(i, 1, {
       linkId: newItem.enableWhen[i]?.linkId,
       operator: newItem.enableWhen[i]?.operator,
       valueCalculation: event.target.value,
});

setItem({
    ...newItem,
    enableWhen
});