checkLogin mais prático
![Mateus Eustáquio Vieira de Carvalho](https://academy.especializati.com.br/assets/site/imgs/no-image.png)
Ola Prof !
Descubri uma maneira de facilitar esse processo sem passar pela rota login, que ao meu ver, não ficou muito legal, toda vez que atualizar passa pela rota login, eu fiz o seguinte, vê se você aprova:
fazer o checkLogin dentro do metodo router.beforeEach. Assim eu so entro nas validações de rotas caso entre no catch(), ai so fazer as validações dentro do catch. Oque você acha.
No caso meu ficou assim:
Obs: Usei o redirect do java script poque estou utilizando templates diferente entre o login e o meu dashboard.
router.beforeEach((to, from, next) => {
store.dispatch('checkLogin')
.catch(() => {
if (to.meta.auth && !store.state.auth.authenticated) {
return window.location.href = '/login'
}
if (to.matched.some(record => record.meta.auth) && !store.state.auth.authenticated) {
return window.location.href = '/login'
}
if (to.meta.hasOwnProperty('auth') && !to.meta.auth && store.state.auth.authenticated) {
return window.location.href = '/'
}
})
next()
})
![Mateus Eustáquio Vieira de Carvalho](https://academy.especializati.com.br/assets/site/imgs/no-image.png)
Olá, Mateus!
Ficou uma boa. Parabéns!
Uma das vantagens de utilizar o Vue.js é a liberdade, ele permite um uso da abstração básica do JavaScript, o que nesse caso dá muita liberdade ao desenvolvedor.
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!