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