使用不变性帮助程序更新时如何使用我的索引作为关键字

时间:2019-07-01 11:49:02

标签: reactjs immutability

我正在尝试使用react文档中建议的immutability-helper更新列表,您可以看到我当前用于更新的代码

    const oldInstallment = this.findInstallmentByIndex(this.state.installmentList, index);
    let newInstallment =  {...oldInstallment}
    newInstallment.isActivated = isActivated;

    const newInstallmentList = update(this.state.installmentList, {index: {$set: newInstallment}});
    this.setState({installmentList: newInstallmentList});

我目前遇到的问题是,index不是用作值而是用作名为index的键,这意味着而不是说0:{$set: newInstallment}的代码是{{1} }会导致向数组中添加新元素,而不是更新index:{$set: newInstallment}中的元素
所以我的问题是如何告诉这种更新方法将索引值用作键?!

1 个答案:

答案 0 :(得分:0)

尝试这样写:

const newInstallmentList = update(this.state.installmentList, {[index]: {$set: newInstallment}});