お世話になっております。
今回、firebaseを利用したwebアプリケーション作成の中で、ログインユーザーの確認を行うコードを作成していました。
そのなかで、if文内でログイン済みのアカウントとデータベースに保存しているユーザー情報の照合で一致した場合画面遷移する流れを作成したいと考えていますが、画面遷移はしてくれません。
ほかの例も見たいと思い、returnで処理を途中で中断しようとしましたが、returnの効果はなく関数の処理が行われていきます。location.hrefが悪さしているのではないかと思いますがどうすれば、画面遷移するかわからず悩んでおります。
解決方法に関して教えていただければ幸いです。
よろしくお願いいたします。
<script> var user = firebase.auth().currentUser; var db = firebase.firestore(); db.settings({ timestampsInSnapshots: true }); firebase.auth().onAuthStateChanged((user) => { if (user) { // User logged in already or has just logged in. console.log(user.uid); db.collection("user").get().then(function(querySnapshot) { querySnapshot.forEach(function(doc) { // doc.data() is never undefined for query doc snapshots console.log(doc.id); if(doc.id==user.uid){ console.log(doc.data()); console.log(doc.id, " => ", doc.data()); location.href = "./success.html"; return; }else{ console.log("no acount"); } }) }); } else { // User not logged in or has just logged out. console.log("not login"); } });
回答1件
あなたの回答
tips
プレビュー