React Native Firebase onStateChanged не отменяет подписку на unmount - PullRequest
2 голосов
/ 17 марта 2020

Я использую библиотеки React-Navigation 5 и React Native Firebase. Я хочу, чтобы onStateChange не работал после перехода с экрана Spla sh на другой экран, но с какой стати он все еще работает на фоне?

Вот функция onStateChange:

 function onAuthStateChanged(user) {
    setUser(user);
    if (initialized) setinitialized(false);
}

Вот функция useEffect:

   useEffect(() => {
    const subscriber = auth().onAuthStateChanged(onAuthStateChanged);
    return subscriber; // unsubscribe on unmount
}, []);

1 Ответ

0 голосов
/ 21 марта 2020

Я решил это с помощью FocusEffect из React Navigation. Просто замените useEffect на useFocusEffect.

...