用户12771345
在 React 中 useEffect 依赖了对象导致无限循环,我如何用 useRef 和自定义比较解决
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
用户12771345
社区首页
>
专栏
>
在 React 中 useEffect 依赖了对象导致无限循环,我如何用 useRef 和自定义比较解决
在 React 中 useEffect 依赖了对象导致无限循环,我如何用 useRef 和自定义比较解决
用户12771345
关注
发布于 2026-09-18 12:52:47
发布于 2026-09-18 12:52:47
92
0
举报
概述
在一个列表页里,需要根据筛选条件请求后端数据,同时支持手动刷新。我把筛选条件存在 filter 对象里,然后在 useEffect 里发起请求,依赖数组写了 [filter]。结果只要父组件重渲染,即使筛选条件没变,也会重新请求,甚至触发无限循环。原因是每次渲染时 filter 都是一个新的对象字面量,React 用 Object.is 比较依赖,引用一变就认为依赖变了。这个问题在真实项目中非常常
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
react
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档