React Hook useEffect has a missing dependency: ‘XXX’. Either include it or remove the dependency array react-hooks/exhaustive-deps
问题
如题,React控制台报错如下
意思大概就是在useEffect钩子中用到的依赖没有加到依赖管理数组中
我的相应逻辑代码如下‘
const getUserData = () => {
getUser(listData).then(({data}) => {
console.log(data.list, 'data');
setTableData(data.list);
})
}
useEffect(() => {
getUserData();
}, []);
其中listData
是用useState
包装的数据,这里报的警告应该就是这个
解决方法
通过给函数传值,这样保证useEffect
能够将listData
加入依赖数组中
修改后的代码
const getUserData = (listData) => {
getUser(listData).then(({data}) => {
console.log(data.list, 'data');
setTableData(data.list);
})
}
useEffect(() => {
getUserData(listData);
}, [listData]);
问题解决
这个警告应该是eslint插件针对React语法的告警,如果不想修改源代码也可以禁用ESlint