UseEffect, вызывающий бесконечный цикл

У меня проблема с useEffect, работающим в бесконечном цикле.

Я пытаюсь передать данные об активности в мое хранилище контекста, но когда я отправляю данные в редуктор, он входит в бесконечный цикл. Есть идеи?

const EditActivityPage = ({ activityId }) => {
  const { state, dispatch } = useStore();
  const useFetch = () => {
    const [success, setSuccess] = useState(false);
    const [loading, setLoading] = useState(true);

    const asyncFetch = () => {
      return new Promise((resolve, reject) => {
        api.activities
          .fetchActivity(activityId)
          .then(resposneData => {
            resolve(resposneData);
          })
          .catch(response => {
            reject("Api call failed!");
          });
      });
    };
    useEffect(() => {
      asyncFetch().then(response =>
        dispatch({ type: "getEditActivity", payload: response })
      );


    }, []);

    return { success, loading };
  };

  const { success, loading } = useFetch();

  console.log(state);

  return <h1>Edit activity</h1>;
};

Я пытался найти решение, но ничего не помогло. Данные поступают в хранилище, но не уверены, почему они все время зацикливаются.

0 ответов

Другие вопросы по тегам