私は反応するネイティブ/ Reduxの/ firebaseでログインプロセスを作るしようとしていると私はいくつかの問題を持っを派遣していないonAuthStateChanged ... はネイティブ/ Reduxの/ Firebaseに反応 -
は私がアクションをディスパッチするonAuthStateChangedを実装しようしかし、それは私が望むように動作していません。それは2例のために働いています:
1 - 私は、直接私の下のように私のコンポーネントでonAuthStateChanged実装:
componentDidMount() {
firebaseAuth.onAuthStateChanged()
.then((user) => {
if (user) {
Actions.home();
} else {
Actions.login();
}
});
}
2 - 私はReduxの-サンクとアクションとしてではなく派遣せずにそれを実装します(しかし、私はアクションをディスパッチして正しいルートにリダイレクトできません)
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");
}
});
};
そして、私は何をしたいこれです(ただし、動作しません):
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));
}
});
};
};
誰かがディスパッチではうまくいかない理由を説明できますか?
ありがとうございます!
に住んでいる私のloginRequestのですか? – Rbar