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

350
Views
¿Por qué necesita usar clearInterval para restablecer el temporizador en React?

En el siguiente código:

 useEffect(() => { const interval = setInterval(() => { setSeconds(seconds => seconds + 1); }, 1000); return () => clearInterval(interval); }, []);

¿Por qué necesita devolver una función de limpieza que restablece el objeto de intervalo? Según tengo entendido, dado que el objeto de la función de interval no se creó con useCallback() , la función debe reiniciarse con cada procesamiento y, por lo tanto, no tiene memoria de los valores de intervalo anteriores. ¿Por qué se necesita una función de limpieza para borrarlo antes del próximo renderizado?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

¿Por qué se necesita una función de limpieza para borrarlo antes del próximo renderizado ?

(énfasis mío)

No es y no es lo que hace este código.

Al pasar una lista de dependencias vacía a useEffect ( [] ), le está diciendo a React que solo ejecute este enlace la primera vez que el componente se renderiza, no (!) cada vez que el componente se vuelve a renderizar.

Ahora, es necesario borrar el intervalo cuando el componente se desmonta/destruye (que es lo que hace este código); de lo contrario, el intervalo seguiría ejecutándose (y arrojaría un error eventualmente, ya que no puede actualizar el estado de un componente desmontado).

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!