我正在使用React-Navigation 5和React Native Firebase库。我希望从初始屏幕导航到另一个屏幕后onStateChange不起作用,但是它仍然可以在后台工作的原因是什么?
这里是onStateChange函数:
function onAuthStateChanged(user) {
setUser(user);
if (initialized) setinitialized(false);
}
这里是useEffect函数:
useEffect(() => {
const subscriber = auth().onAuthStateChanged(onAuthStateChanged);
return subscriber; // unsubscribe on unmount
}, []);
我用React Navigation中的useFocusEffect解决了它。只需将useEffect替换为useFocusEffect。