关于react中setState的使用
1.修改state中的值,必须采用setState修改。
this.setState()中可以传递两种格式的参数,第一种
componentDidMount() { this.setState({ count: this.state.count + 1 }, () => { console.log(this.state.count); //此时可以拿到最新的state }) }
第一个参数是对象,第二个参数是一个回调函数,由于setState为异步的,所以可以通过第二个参数为回调的方式拿到最新的值
第二种
componentDidMount() { this.setState((prev, curr) => ({ count: prev.count + 10 }), () => { console.log(this.state.count,) }) }
setstate的第二种格式,接收一个回调函数,而不是一个对象,这个回调函数有两个参数,
一个是接收前一个状态值作为第一个参数,并将更新后的值作为第二个参数