常规方式
连续执行2次setState,如下方式,往往只有一次效果,即后者的效果
this.setState({
count: this.state.count + 1,
})
this.setState({
count: this.state.count + 2,
})
相当于
this.setState(Object.assign({},{
count: this.state.count + 1,
},{
count: this.state.count + 2,
}))
prevState
this.setState(prevState=>({
count: prevState.count + 1,
}))
this.setState(prevState=>({
count: prevState.count + 2,
}))
如此写法,在react中,会形成一个队列,对所有setState依次调用