You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React ESLint疑问:useReducer生成的dispatch无需作为依赖?

问题解答

这是预期的ESLint规则行为,原因如下:

  • react-hooks/eslint-plugin插件的exhaustive-deps规则已更新,将React官方保证引用稳定的函数默认排除在依赖检查之外,其中就包括useReducer返回的dispatch函数,以及useState返回的状态设置器。
  • React官方明确说明,useReducer的dispatch在组件整个生命周期内引用不会变化,属于「稳定标识」,即使不加入useEffect的依赖数组,也不会导致副作用逻辑出现不一致问题。ESLint规则的调整正是对齐了这一官方承诺。
  • 此前版本的规则确实要求开发者将dispatch加入依赖数组,但后续考虑到这类稳定函数不会引发依赖问题,同时能减少不必要的代码冗余,规则团队决定自动忽略对它们的依赖检查,因此现在省略dispatch不会触发ESLint报错。

内容的提问来源于stack exchange,提问作者Giraphi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 23:48:08