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

可变的最佳实践 | 不可变对象

可变的最佳实践 | 不可变对象

白猪掌柜的 2021-06-29 21:02:47
我们应该使用第一种方式还是第二种方式来更新状态中的设置对象?哪个是可变的最佳实践?不变的概念?state = {  settings: {    at: [],    // other keys  }}addHour = () => {    const { settings } = this.state;    const time = moment();    time.set({ minutes: 0, seconds: 0 });    // First Way    settings.at.push(time);    this.setState({ settings });    // Second Way    const new_settings = {        ...settings        at: [...settings.at, time]    }    this.setState({ settings: new_settings });};
查看完整描述

3 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

在第一种方式中,您仍然在改变原始状态对象。它被称为对原始对象的引用。第二种方法是对状态进行克隆。它的2个不同的对象。


查看完整回答
反对 回复 2021-07-01
  • 3 回答
  • 0 关注
  • 110 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信