当我router.push('/')用作注销的最后一步时,我遇到了问题。
/ redirect如果我从与s相同的路由触发注销过程,router.beforeEach则不会触发,因此不会将用户重定向到,/login但仍显示应该只对登录用户可见的路由(用户不再是在注销过程结束时)。
{
path: '/',
redirect: 'foo'
},
{
path: '/foo',
name: 'foo',
component: Foo,
meta: {
requiresAuth: true
}
},
和
router.beforeEach((to, from, next) => {
...
if(to.requiresAuth && userLoggedIn == false)
next('/login')
...
因此,如果我从除预期之外的任何路由触发注销,/foo但如果我从/foo用户触发它,则不会重定向到/login.
我想这可能是使路由尽可能高效的预期行为,但在这种情况下,这绝对不是我想要的。
我如何确保我的beforeEach路线守卫将在每一个上进行评估router.push/replace?