惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

量子位
云风的 BLOG
云风的 BLOG
小众软件
小众软件
IT之家
IT之家
T
Tailwind CSS Blog
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
美团技术团队
博客园 - 叶小钗
V
V2EX
博客园 - Franky
大猫的无限游戏
大猫的无限游戏
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
阮一峰的网络日志
阮一峰的网络日志
博客园 - 【当耐特】
罗磊的独立博客
博客园_首页
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
爱范儿
爱范儿
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Jina AI
Jina AI
月光博客
月光博客
有赞技术团队
有赞技术团队

React

react 的旧文档网站,切换语言到中文,直接跳到新文档?? react 这个技术栈到底是如何做到每天都有新发现的? 除了 next.js,在 2026 年,还有哪些 React 全栈框架推荐? React 列表虚拟化如何实现使用 CSS Grid 布局的同时支持拖动元素? 想不通, React 现代框架的设计者,为什么内置的 onClick 不默认防抖? 关于低代码的选型,请佬们帮我分析一下 将 Markdown 文件导入为 React 组件 - 写作文档,即时获取交互式演示 现代 React 应用卡顿的主要原因是什么?组件库 vs 重渲染机制 前端开发进军 server 端还是问题很多 问一下, expo react native 的 TextInput 在小米系统下,显示有问题。大家有遇到么,如何解决。 React Suite v6:面向现代化的稳健升级 各位总们,开发兼容到 ios 11 的 APP, RN 推荐吗 expo-image 在使用时候必须要加 style 属性 ? 佬们, 咨询一个前端 React 的开发效率问题, 就是如果想快速实现一个界面组件的效果,只需要 render 部分, 有什么好用的工具吗? 2025 快过完了,有 ssr 需求的项目现在最佳选择是什么? 在 react 中使用 signals 库 react charts 技术选型 折腾了好几天总算在 windows 系统本地打包 expo 项目出 apk 了,分享下经验 一个 RN 小游戏代码修改的活 为什么 React-Native 总是昨天还能编译,今天就报错了 React 19 下有什么方便点的组件? Arco Design 用起来还是有些问题 时隔多年再次用 react,请问 ahooks 的 useMemoizedFn 和 react 内置的 useEffectEvent 有什么异同? 来个专业写 移动 web 前端的, React 谁有闲工夫, React,帮忙定位并处理下 BUG react antd 就是包了巧克力的屎 提问一个 React 的问题 React 多人开发怎么确保性能,有没有最佳实践 zustand create 出来的 useStore,需不需要 destory? 关于 React: Metis UI:下一代 React 组件库,重新定义前端开发体验
请教一个关于 useEffect 依赖的问题
ooo4 · 2025-02-20 · via React

请教一个关于 useEffect 依赖的问题

最近在学习 react 和 nextjs ,算初学者,感觉我写的很多 useEffect eslint 都提示缺少依赖,但其实我觉得写的依赖已经够了

比如这样

  const [conversation, setConversation] = useState<Conversation[]>([])
  useEffect(() => {
    if (currentChatTitle) {
      setConversation(
        conversation.map((i) => {
          return {
            ...i,
            title: i.id === currentChatId ? currentChatTitle : i.title,
          }
        })
      )
    }
  }, [currentChatId, currentChatTitle])

eslint 就说缺少conversation这个依赖,但是加了之后就无限执行这个 useEffect 回调了,其实我连这个currentChatId都不想加入依赖

eslint 也给了解决方案就是改成setXXX((prev)=>xxx),但这样好麻烦啊,或者就是 disable 掉这一行

  useEffect(() => {
    if (currentChatTitle) {
      // 改成`setXXX((prev)=>xxx)`
      setConversation((conversation) =>
        conversation.map((i) => {
          return {
            ...i,
            title: i.id === currentChatId ? currentChatTitle : i.title,
          }
        })
      )
    }
  }, [currentChatId, currentChatTitle])

请问下各位平时会关掉这个eslintreact-hooks/exhaustive-deps这个规则吗