Vue router поддерживает компонент живым после смены маршрута - PullRequest
0 голосов
/ 02 мая 2019

У меня есть маршруты /home и /profile

/profile Маршрут должен быть закрытым, к нему могут обращаться только аутентифицированные пользователи

Я использую firebase/authи защита маршрута для достижения этого

это код маршрутизатора

const router = new Router({
    path: '/',
    name: 'home',
    component: Home
},
{
    path: '/profile',
    name: 'profileSettings',
    component: ProfileSettings,
    beforeEnter: authGuard
},
{
    path: '/auth',
    name: 'auth',
    component: Auth
})

function authGuard(from, to, next) {
    firebase.auth().onAuthStateChanged(user => {
        if (user) {
            next()
        } else {
            next('/auth')
        }
    })
}

код выхода из системы

logout() {
    firebase.auth().signOut().catch(error => {
        console.error(error)
    })
}

код шаблона для вызова функции выхода из системы

<a href='#" @click.prevent="logout">Logout</a>

После того как я перехожу на /profile, затем возвращаюсь к /home и перенаправление на выход происходит с auth page

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...