如果添加了功能依赖项,则React useEffect无限地渲染

问题描述

我正在使用react useEffect挂钩从后端获取数据。 我正在使用两个函数(解构的道具)

  1. createError(如果有任何错误)
  2. setisLoading(在获取数据时加载微调器) 代码是:
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调用。

如何阻止这种情况发生?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)