React Hooks的提问

我在学习useRef的时候,有个需求:
在组件挂载的时候,开启一个定时器,实现对变量count的递增,然后当count等于5的时候,取消这个定时器。
1.png

很显然,更新的数值依赖上一次数值,可以给更新count的函数传一个函数返回新的一个数值,这个react官网也提过,但是我不传函数,传一个新的表达式替换上一次的状态就不行,这点我感到不解。

阅读 2.1k
4 个回答

这里涉及到历史值的问题,你用表达式,这个count一直是定义时的那个值,也就是0

因为闭包的原因,effect里看到的count是 开始effect的那次render的count

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题