react学习笔记2之正确使用状态

//状态不要直接修改,比如:

// 错的,这样写不会重新渲染组件
this.state.comment = 'Hello';

//修改状态正确的方式
this.setState({comment:'Hello'});

setState方法的参数可以接受一个对象,也可以接受一个回调函数,状态的修改可能是异步的,所以当你修改的状态需要依赖状态本身或者props的值的时候,不要用上面的方式,而是传递一个方法,比如:

//假如组件有这样一个状态 this.state = {count:0};
this.setState((prevState,props) =>({count:prevState.count + props.num}))

//当setState的参数是回调函数的时候,它接受两个参数,第一个是组件的上一个状态对象,第二个是组件的props对象

//组件可以将状态作为属性传递给子组件
<Demo message={this.state.comment} />

//状态只能定义在construtor构造函数里面
原文地址:https://www.cnblogs.com/toward-the-sun/p/7845197.html