我很难将Redux动作传递到useEffect的依赖项列表中。
例如,
import { someReduxAction } from '../actions/greatestPathEverMade'
const mapDispatchToProps = () => ({
someReduxAction
})
const DummyComponent = ({ someReduxAction }) => {
useEffect(() => {
someReduxAction()
}, [someReduxAction])
return ( .... )
}
我有75%的肯定Redux Action不会改变,因此我可以从useEffect的依赖项数组中忽略它,但是我的问题主要是:Redux操作是否可能改变?通常,它们是恒定的,因为基本的redux动作将调度类型和有效负载对象。
答案 0 :(得分:0)
ESLint exhaustive-deps
规则无法知道该函数是否将更改为其他引用,因此它将始终告诉您该函数需要添加到依赖项列表中。唯一的例外是内置的React函数,例如useState
设置程序或useReducer
分派,React确保这些函数是稳定的引用,并以这种方式硬编码到ESLint规则中。