我有一个上下文,用于在我的应用程序执行长时间运行的任务时显示整页微调器。
当我尝试在内部访问它时,useEffect
我收到一条react-hooks/exhaustive-deps
ESLint 消息。例如,下面的代码,虽然它按预期工作,但声明busyIndicator
缺少依赖项:
const busyIndicator = useContext(GlobalBusyIndicatorContext);
useEffect(() => {
busyIndicator.show('Please wait...');
}, []);
这篇文章建议我可以包装useCallback
可能如下所示的函数:
const busyIndicator = useContext(GlobalBusyIndicatorContext);
const showBusyIndicator = useCallback(() => busyIndicator.show('Please wait...'), []);
useEffect(() => {
showBusyIndicator();
}, [showBusyIndicator]);
尽管这有效,但它已将问题移至useCallback
现在抱怨缺少依赖项的行。
在这种情况下可以忽略 ESLint 消息还是我错过了什么?