Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

276
Vistas
Informe: número excesivo de devoluciones de llamadas pendientes: 501 cuando se llama dentro de useEffect

Estoy usando React JS, Redux, React-Redux, Redux-Thunk.

Archivo: Acions.js: aquí están mis funciones de acción Redux:

 export function setSuccess(data){ return{ type: "SET_SUCCESS", payload: data }; } export function setMessage(data){ return{ type: "SET_POSTS", payload: data }; } export const listMyBlogPosts = (userID, abortController) =>{ return (dispatch) =>{ axios.get(`http://locahost:5000/timeline/posts/${userID}`, {signal: abortController}) .then((response) =>{ dispatch(setSuccess(true)); dispatch(setMessage(response.data.message)); }).catch((error) =>{ console.log("err: ", error); dispatch(setSuccess(false)); dispatch(setMessage(`${error}`)); }); } };

Aquí es donde estoy usando la función anterior:

Archivo: ABC.js:

 function ABC({ someCheck }){ const abortController = useRef(new AbortController()); const dispatch = useDispatch(); console.log(“ABC component”); useEffect(() =>{ navigation.addListener("focus", () =>{ dispatch(listMyBlogPosts(userID, abortController.current.signal)); console.log("focus is being run!"); }); return () => abortController.current.abort(); }, []); }

En el componente ABC, me sale el siguiente error:

mensaje de error

Si elimino el gancho useEffect, ¿no obtengo el error anterior?

Cómo arreglar este error ?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Su código está agregando más y más oyentes de "enfoque" de eventos, lo que genera muchas llamadas de solicitud. Por lo tanto, debe eliminar esos detectores de eventos una vez que se desmonte el componente.

 useEffect(() => { const onFocus = () => { dispatch(listMyBlogPosts(userID, abortController.current.signal)) console.log('focus is being run!') } navigation.addListener('focus', onFocus) return () => { navigation.removeListener('focus', onFocus) abortController.current.abort() } }, [])
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda