21 lines
641 B
TypeScript
21 lines
641 B
TypeScript
import { createRouter, createWebHashHistory } from 'vue-router'
|
|
import LoginView from '../views/LoginView.vue'
|
|
import GameView from '../views/GameView.vue'
|
|
|
|
const router = createRouter({
|
|
history: createWebHashHistory(),
|
|
routes: [
|
|
{ path: '/', redirect: '/login' },
|
|
{ path: '/login', name: 'login', component: LoginView },
|
|
{ path: '/game', name: 'game', component: GameView, meta: { requiresAuth: true } },
|
|
],
|
|
})
|
|
|
|
router.beforeEach((to) => {
|
|
const token = localStorage.getItem('rpg_token')
|
|
if (to.meta.requiresAuth && !token) return '/login'
|
|
if (to.path === '/login' && token) return '/game'
|
|
})
|
|
|
|
export default router
|