为了账号安全,请及时绑定邮箱和手机立即绑定

使用变量标识符反应更新嵌套对象的状态

使用变量标识符反应更新嵌套对象的状态

蝴蝶刀刀 2022-06-09 19:34:40
您好,我无法在反应中更新嵌套对象状态。当我尝试这样做时,我在所有孩子中都遇到了错误(来自父母的未定义道具)。这是我的代码:    updateColumn(newSubject,dayId,order){        console.log("tu som");        console.log(newSubject);        console.log(dayId);        console.log(order);        console.log(this.state.schedule);        //Problematic part:        let newSchedule = this.state.schedule;        newSchedule.days[dayId].slots[order] = newSubject;        console.log("newSchedule");        console.log(newSchedule);        this.setState({schedule:this.state.schedule});        console.log("this new state");        console.log(this.state.schedule);        //State changed but error shows    }
查看完整描述

1 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

尝试这个 :


this.setState({...this.state, schedule: {

  ...this.state.schedule,

  days: {

     ...this.state.schedule.days,

     [dayId]: dayId,

     slots: {

      ...this.state.schedule.days.slots,

      [order] : newSubject

   }

})


查看完整回答
反对 回复 2022-06-09
  • 1 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号