123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import { createRouter, createWebHistory } from 'vue-router'
- import { UserStore } from '@/store/user'
- import axios from 'axios'
- const router = createRouter({
- history: createWebHistory(import.meta.env.BASE_URL),
- routes: [
- {
- path: '/',
- redirect: '/home'
- },
- {
- path: '/home',
- name: 'home',
- meta: { title: '产学研用协同创新数字化平台' },
- component: () => import('@/views/home/index.vue')
- },
- {
- path: '/loading',
- name: 'loading',
- meta: { title: '产学研用协同创新数字化平台' },
- component: () => import('@/views/loading/index.vue')
- }
- ]
- })
- router.beforeEach(async (to, from, next) => {
- const userStore = UserStore()
- document.title = `${to.meta.title} `
- const token = localStorage.getItem('token')
- if (token) {
- const res = await axios.request({
- method: 'get',
- url: `${import.meta.env.VITE_APP_BASE_API}/token/tokenView`,
- responseType: 'json',
- headers: {
- token: token
- }
- })
- if (res.data.errcode === 0) userStore.setUser(res.data.data)
- next()
- } else next()
- })
- router.afterEach(() => {
- window.scrollTo(0, 0)
- })
- export default router
|