[英]React Hook useEffect has a missing dependency: 'setValid' . How to remove this warning
我是新手,第一次使用 useEffect。 我收到缺少依赖项的警告,但该应用程序运行良好。 我该如何解决警告? 还是可以忽略此警告?
useEffect(() => {
setValid(true);
}, []};
我收到警告:React Hook useEffect 缺少依赖项:'setValid'。
很容易,只需将setValid
作为依赖项传递
setValid(true);
}, [setValid]};
正如 NeERAJ TK 提到的,React linter 抱怨在依赖数组中没有 setValid :
useEffect(() => {
setValid(true);
}, [setValid]};
我假设setValid
是由组件内的 use 钩子生成的设置器。 如果您将在依赖项数组中传递 function 并且只在您的useEffect
中调用setState
,您将陷入无限循环,因此您将不得不记忆或寻找不同的方法。
在这种情况下,我建议一般不要使用useEffect
,并将默认值传递给setState
:
const [valid, setValid] = useEffect(true);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.