我刚刚发现在反应 this.setState()
函数在任何组件中都是异步的,或者在调用它的函数完成后被调用。
现在我搜索并找到了这个博客(SetState ()状态突变操作可能在 ReactJS 中是同步的)
在这里,他发现 setState
是异步的(当栈为空时调用)或同步的(调用后立即调用) ,这取决于如何触发状态的变化。
这两样东西很难消化
updateState
内部调用 setState
函数,但是触发 updateState
函数的是被调用函数不知道的事情。setState
异步,因为 JS 是单线程语言,而 setState 不是 WebAPI 或服务器调用,所以只能在 JS 的线程上执行。他们这样做是为了重新呈现不停止所有事件侦听器和东西,或者有一些其他的设计问题。