react修改state中的对象数组

一直把数据定义在store中没想过要把更改对象数组中的值,这次放在state中了突然发现还不知道怎么修改state中对象数组的某个对象的某个键值,解决之后先将实现方式来简单记录一下

constructor() {
  super()
  this.state = {
    CopyList: [{personNum:'111'},{personNum:'222'},{personNum:'333'}],
  }
}


CopyList.map((v,index)=>{
  <li><Input
      value={v.personNum}
      onChange={e => {
      //先解构state 中的CopyList
      const copyListTemp =[...this.state.CopyList];
        //然后修改当前CopyList数组中第index个对象的personNum
      this.setState({
        CopyList: copyListTemp.map((item, idx) => idx === index ? { ...item, personNum: e.target.value } : item)
      })
    }}
/></li>
})

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐