Ich versuche, mit reagieren nativer/Redux/Feuerbasis einen Login-Prozess zu machen und ich habe einige Probleme ...Reagieren Nativ/Redux/Firebase - onAuthStateChanged nicht
Ich versuche onAuthStateChanged zu implementieren, um eine Aktion zu versenden , aber es funktioniert nicht so wie ich es will.
Es ist für zwei Fälle arbeiten:
1 - ich meine direkt implementieren onAuthStateChanged in meiner Komponente wie unten:
componentDidMount() {
firebaseAuth.onAuthStateChanged()
.then((user) => {
if (user) {
Actions.home();
} else {
Actions.login();
}
});
}
2 - ich es umsetzen als eine Aktion mit redux-Thunk in aber ohne Versand (aber dann kann ich keine Aktion versenden und zu meiner korrekten Route umleiten)
export const isAuthenticated =() => {
firebaseAuth.onAuthStateChanged()
.then((user) => {
if (user) {
console.log("launch.action#isAuthenticated - user already connected");
} else {
console.log("launch.action#isAuthenticated - user not connected");
}
});
};
Und ich will, was dies zu tun ist (aber nicht funktioniert):
export const isAuthenticated =() => {
return (dispatch) => {
firebaseAuth.onAuthStateChanged()
.then((user) => {
console.log('user', user);
if (user) {
console.log("launch.action#isAuthenticated - user already connected");
dispatch(isUserConnected(true));
} else {
console.log("launch.action#isAuthenticated - user not connected");
dispatch(isUserNotConnected(true));
}
});
};
};
Kann mir jemand erklären, warum es nicht mit dem Versand funktioniert?
Danke!
können Sie die Funktionen für 'isUserNotConnected' und' isUserConnected' teilen? – Rbar