首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >React 中 useEffect 依赖数组的陷阱:为什么你的回调总是拿到旧状态

React 中 useEffect 依赖数组的陷阱:为什么你的回调总是拿到旧状态

作者头像
用户11716263
发布于 2026-10-28 08:37:30
发布于 2026-10-28 08:37:30
840
举报
概述
在 React 函数组件里用 useEffect 处理副作用时,依赖数组写错导致闭包捕获旧值是最常见也最隐蔽的 bug 之一。典型场景是定时器、事件监听或异步请求的回调里读取 state,明明 state 已经更新,回调里却还是初始值。根源在于每次渲染都会创建新的作用域,而依赖数组为空或遗漏变量时,effect 只在挂载时执行一次,回调闭包锁死了那一轮的变量。很多人靠加 eslint-disabl

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档