前提・実現したいこと
firebaseのログイン、ログアウトの処理を実装し、リロード時は、そのままの画面を表示し、ログアウト後に、ログイン画面に遷移しようとすると、ログイン画面に遷移するようにする。
ここに質問の内容を詳しく書いてください。
現在、ログアウト、リロード、ログアウト後にログイン中の画面に遷移しようとすると、ログイン画面に遷移するの3つは、実装できたのですが、リロードをした後に、ログアウトをすると、エラーが発生してしまいました。エラー内容を調べたところ、next関数が同時に1回以上呼ばれていることが原因だと思い、if、elseを使用して実装したのですが、エラーが解消できなかったです。
発生している問題・エラーメッセージ
Uncaught (in promise) Error: Navigation cancelled from "/Home" to "/" with a new navigation. at createRouterError (vue-router.esm.js?8c4f:2065) at createNavigationCancelledError (vue-router.esm.js?8c4f:2047) at eval (vue-router.esm.js?8c4f:2394) at step (vue-router.esm.js?8c4f:2001) at step (vue-router.esm.js?8c4f:2008) at runQueue (vue-router.esm.js?8c4f:2012) at eval (vue-router.esm.js?8c4f:2392) at step (vue-router.esm.js?8c4f:2001) at eval (vue-router.esm.js?8c4f:2005) at eval (vue-router.esm.js?8c4f:2379)
該当のソースコード
router
1 { 2 path: '/Home', 3 component: Home, 4 beforeEnter: function(to, from, next) { 5 firebase.auth().onAuthStateChanged((user) => { 6 console.log(user) 7 console.log(!user) 8 if (user) { 9 next(); 10 } else { 11 next({ 12 path: '/', 13 query: { redirect: to.fullPath }, 14 }); 15 } 16 }) 17} 18
どうすればこのエラーが解消できるか検討もついてないです。
ご教授よろしくお願いします
あなたの回答
tips
プレビュー