我正在使用react useEffect挂钩从后端获取数据。 我正在使用两个函数(解构的道具)
useEffect(() => { const fetchCourses = async () => { setisLoading(true); try { const response = await fetch( `${localurl}api/course/getEnglishCourses`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); const responseData = await response.json(); setLoadCourses(responseData.courses); setisLoading(false); // console.log(responseData.courses); } catch (err) { setisLoading(false); createError("Something Went Wrong"); } }; fetchCourses(); }, []);
ESLint提示“ createError”和“ setisLoading”缺少依赖项。
如果我添加这些useEffect无限运行,则setisloading每次都会重新启动useEffect调用。
如何阻止这种情况发生?
答案 0 :(得分:0)
如果您知道自己在做什么,并且只想取消显示警告,则可以在dep之前添加// eslint-disable-next-line react-hooks/exhaustive-deps
以仅在第一次渲染时运行效果。