react setState

Posted lskzj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react setState相关的知识,希望对你有一定的参考价值。

setState在正常情况下都是异步的更新数据,这样会导致

onClickHandler(){
    this.setState({count : this.state.count ++; });
    console.log(this.state.count)      
}

 setState 更新了state的数据但是clg的时候展示的是上一次更新的数据,解决方式有:

方式一:回调函数

this.setState({ count: this.state.count++} , () =>{ 相关操作 })

方式二:  

<button onClick = { this.onClickHandler.bind(this) }></button>
setStateAsync(state) { return new Promise( (resolve)=> { this.setState(state , resolve) }) } Async onClickHandler(){ await this.setStateAsync({ count: this,state.count++ }); console.log(this.state.count) }

  

以上是关于react setState的主要内容,如果未能解决你的问题,请参考以下文章