diff --git a/src/router/router.js b/src/router/router.js index 984f883..82acbe6 100644 --- a/src/router/router.js +++ b/src/router/router.js @@ -11,21 +11,22 @@ const router = createRouter({ }); router.beforeEach(async (to, from, next) => { - const pinia = getActivePinia(); - const pageStore = usePageStore(pinia); - const userStore = useUserStore(pinia); + const pageStore = usePageStore(); + const userStore = useUserStore(); - if (to.path === '/login') next(); - - const api = useApiStore(pinia); + const api = useApiStore(); try { const res = await api.fetchData(to.path); - if (!res.user) next('/login'); - - pageStore.page = res.page; - userStore.user = res.user; - next(); + if (!res.user && to.path === '/login' && from.path === '/login') { + next(); + } else if (res.user && to.path === '/login') { + next('/'); + } else { + pageStore.page = res.page; + userStore.user = res.user; + next(); + } } catch (error) { console.error(error); next(false);