react面试题——理解setState(源码object.assign)
Posted yayaxuping
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react面试题——理解setState(源码object.assign)相关的知识,希望对你有一定的参考价值。
setState是异步的方式
this.setState({
counter:this.state.counter+1
})
console.log(this.state.counter)
setState是异步,执行最后一个setState
同步执行的方法,传递函数
1,this.setState(nextState=>{
return{
counter: nextState.counter+1
}
})
2,setTimeout(()=>{
this.changeValue()
},1000)
3,
this.setState({
counter:this.state.counter+1
},()=>{
console.log(2)
})
4,原生事件
doccument.body.addEventListener(‘click‘,this.changeValue,false)
注释
setState只有在合成事件的和生命周期才是异步,原生事件好的setTimeout是同步的,这里的异步的是批量更新
以上是关于react面试题——理解setState(源码object.assign)的主要内容,如果未能解决你的问题,请参考以下文章