首页 > 其他分享 >react使用this.setState给数组中某个对象赋值

react使用this.setState给数组中某个对象赋值

时间:2023-03-03 10:12:28浏览次数:40  
标签:dat payType react item payTypeList openFlag setState type 赋值

先记录一下正确写法

    const { payTypeList } = this.state;
    let temp = payTypeList
    dat.openFlag = type //这一句是必须的,不然状态无法更改
    temp.map((item, key) => item.payType == dat.payType ? {...item, openFlag: type} : item)//这一句是必须的,不然状态无法更改
    this.setState({
      payTypeList: this.state.payTypeList.map((item, key) => item.payType == dat.payType ? {...item, openFlag: type} : item)
    },()=>{
      console.log("开启-关闭扫码盒子:"+JSON.stringify(this.state.payTypeList))
    })

一开始下面这两句没有加,怎么都改变不了openFlag的值

加上就可以了

dat.openFlag = type //这一句是必须的,不然状态无法更改
temp.map((item, key) => item.payType == dat.payType ? {...item, openFlag: type} : item)//这一句是必须的,不然状态无法更改

 

标签:dat,payType,react,item,payTypeList,openFlag,setState,type,赋值
From: https://www.cnblogs.com/cailijuan/p/17174618.html

相关文章