两种样式的“ setState”有什么区别

时间:2018-12-13 12:35:38

标签: reactjs state

以下使用setState的代码段之间有什么区别

this.setState({})

this.state = {}

3 个答案:

答案 0 :(得分:3)

最后一个this.state = ...仅应在构造函数中使用,以便设置组件首次装入时的初始状态。

对于其他任何用途,this.setState()应该专门使用,因为安装后,您希望将组件采用到React生命周期中。更多信息herehere

  

将setState()视为请求而不是立即命令来更新组件。为了获得更好的感知性能,React可能会延迟它,然后在一次通过中更新几个组件。 React不能保证状态更改会立即应用。

答案 1 :(得分:2)

这只是初始化状态值。

this.state = {value:0};

这用于更新您的状态值。

this.setState({value:5});

希望对您有用。

答案 2 :(得分:1)

this.state只是日常对象,例如:

user:{
name:'Foo',
age: 123

}

this.setState()是一个函数,它接收一个对象(此处为修改后的状态),并通过传递的对象来更新您的状态。