簡體   English   中英

React Hook useEffect 缺少依賴項:'setValid'。 如何刪除此警告

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM