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的主要内容,如果未能解决你的问题,请参考以下文章
react-native this.setState 导致代码停止运行
React - setState(...): 只能更新一个挂载或挂载的组件