Escribí un código para establecer un Intervalo en mi dealScreen :
let timer; useEffect(() => { timer = setInterval(() => { console.log('test'); }, 1000); return () => clearInterval(timer); }, []); Al navegar a otra página con navigation.push el intervalo no se borra. ¿Cómo puedo forzar que se borre el intervalo en la navigation ? Debido a que es una pila, creo que la página todavía está detrás de la nueva página.
Cuando uso navigation.replace , funciona, pero luego no tengo un historial correcto.
Intente llamar a la función clearInterval(timer) cuando intente navegar.
Ejemplo:
let timer; useEffect(() => { timer = setInterval(() => { console.log('test'); }, 1000); }, []); const navigateToNextScreen = () => { clearInterval(timer); navigation.push('Next Sreen'); };Espero que esto te ayude. Gracias.