tengo dos pantallas en la misma pila
<TravelStack.Navigator screenOptions={{ headerTitle:"", headerStyle:{ backgroundColor:"black" }, headerLeft:()=><Ionicons name="menu-outline" size={30} style={{marginLeft:6}} color="#45c7e8" />, headerRight:()=> <Ionicons name="notifications-outline" style={{marginRight:6}} size={30} color="#45c7e8" /> }} > <Tabs.Screen name="Travel" component={Viajes} options={{ unmountOnBlur: true }} /> <Tabs.Screen name="Conductor" component={ConductorOptionsScreen} options={{ unmountOnBlur: true }} /> </TravelStack.Navigator>Y estoy llamando a dos métodos usando useEffect en la pantalla "Viaje"
const isFocused = useIsFocused(); useEffect(() => { setLoading(true) verifyState() const interval = setInterval(() => { verifyState() }, 60000); return () => clearInterval(interval); }, [isFocused]);cuando navego a la pantalla 2 en este caso, "Pantalla de conductor" Después de un tiempo, el método "setLoading" está funcionando, pero no estoy llamando a este método en "verifyStateFunction", estoy tratando de usar las opciones "unmountOnBlur" pero no funciona. ¿Alguien podría ayudarme? entiendo lo que está pasando?
actualice estoy tratando de reemplazar el método para esto pero no funciona
useEffect(() => { const unsubscribe = navigation.addListener('focus', () => { setLoading(true) verifyState() }); return unsubscribe; }, [navigation]) useEffect(() => { const interval = setInterval(() => { verifyState() }, 60000); return () => clearInterval(interval); }, []);