Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

266
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!