咋执行结果都不一样呢

来源:3-5 useState到底是同步更新还是异步更新

无解的游戏

2023-09-27

图片描述

我这里就没+4,而且render是 3 次

写回答

1回答

河畔一角

2023-10-08

其实,这里默认应该只打印2次。

你之所以显示3次是因为,初始化页面的时候,默认执行了一次,点击按钮,会打印2次。 课程说的4次,是因为开启了StrictMode模式,会多打印2次。

setCount(count+1)这种方式是异步的,所以两个setCount放在一起,只会渲染一次。 如果四个放在一起,同样只会渲染一次,但是由于使用flushSync函数进行包裹了,所以上下各执行一次。

0
0

React18+TS 通用后台管理系统解决方案落地实战

全面提升React高阶技能,灵活驾驭各类后台管理系统开发痛点

624 学习 · 226 问题

查看课程