当前位置: 首页 > 知识库问答 >
问题:

如何在React中改变状态对象内键的状态?[副本]

苏磊
2023-03-14
this.state = {
  stuff: {
    stuffData: [],
    loading: true,
  },
  moreStuff: {
  ...
  }
}
const { stuff } = this.state;
const newStuff = stuff;
newStuff.loading = true;
this.setState({ stuff: newStuff };

但是我想这样做(不要得到预期的结果):

const { stuff } = this.state;
this.setState({ stuff: {loading: true, ...stuff } });

我错过了什么?

共有1个答案

仲孙昊焱
2023-03-14

首先复制对象,然后更改要更改的值。

const { stuff } = this.state;
this.setState({ 
   stuff: {
       ...stuff, 
       loading: true 
   } 
});

因为如果rest={a:2,b:3}

>

  • {a:1,...rest}将为您提供{a:2,b:3}

  •  类似资料: