我有一个如下所示的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内的指定索引处更改。
如何在另一个对象内部的对象和数组内的特定索引处设置此键的值?任何帮助表示赞赏。
答案 0 :(得分:2)
如果我理解正确,我会这样做:
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
});