在状态内存储对象属性

时间:2019-01-06 22:12:36

标签: reactjs

我在React中有一个状态。

this.state = {
  loggedUser: '',
  playersList: []
};

然后我向服务器API发出请求并返回一个对象。然后我尝试将其保存为状态:

  this.setState({ response })

但是现在处于状态中的是对象及其嵌套的属性。

this.state = {
  loggedUser: '',
  playersList: [],
  response: {
    ...
  }
};

是否可以将所有属性直接保存到状态中? 我希望它看起来像这样:

this.state = {
  loggedUser: '',
  playersList: [],
  response_attr1: ,
  response_attr2: ,
  ...
};

1 个答案:

答案 0 :(得分:3)

您可以使用点差运算符:

this.setState({ ...response })

例如:

const thing = {a: 0, b: 1}
console.log({c: 2, ...thing})

给您

{ c: 2, a: 0, b: 1 }

您可以详细了解here