首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >React 中使用 useEffect 清理函数时,为什么有时候清理不生效?

React 中使用 useEffect 清理函数时,为什么有时候清理不生效?

作者头像
用户12771345
发布于 2026-11-08 10:58:31
发布于 2026-11-08 10:58:31
590
举报
概述
在 React 函数组件里,useEffect 的清理函数负责取消订阅、清除定时器、中断请求等收尾工作,但实际开发中经常遇到“清理函数不执行”或者“执行了却清错了东西”的情况。典型场景是组件卸载后定时器还在跑、WebSocket 连接没断开、事件监听器重复绑定,或者某个异步请求回来时组件已经没了,却仍然调用了 setState。问题根源通常集中在依赖数组写法、闭包捕获的值、清理函数与副作用的对应关

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

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

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