【发布时间】:2019-09-10 23:38:17
【问题描述】:
我正在尝试使用 Firebase Auth 和 Vue 路由器重定向用户。
关键是当路由器将用户重定向到“/”时,网站上什么都没有显示(完全白屏)。
我知道我做错了什么,但我不知道到底是哪里出了问题。
这就是我的“router.js”文件的样子:
const router = new Router({
routes: [
{
path: '*',
redirect: '/login'
},
{
path: '/',
redirect: '/login'
},
{
path: '/login',
name: 'Login',
component: Login
},
{
path: '/',
name: 'Home',
component: Home,
meta: {
authenticated: true
}
}
]
})
router.beforeEach((to, from, next) => {
let user = firebase.auth().currentUser;
let approbation = to.matched.some(record => record.meta.authenticated)
if (approbation && !user) {
next('/login')
} else if (!approbation && user && from.path !== '/') {
next('/')
}
})
export default router
【问题讨论】:
-
订购了
routes选项。如果您首先输入path: '*',它将始终匹配(即使您重定向到/login,/login仍然会匹配它)。
标签: javascript firebase vue.js firebase-authentication vue-router