permissionPc.js
994 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import router from './routerPc/index'
import { ElMessage } from 'element-plus'
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
import { getToken, setToken } from '@/utils/auth'
import { isRelogin } from '@/utils/request'
import useUserStore from '@/store/modules/user'
NProgress.configure({ showSpinner: false })
router.beforeEach((to, from, next) => {
NProgress.start()
// debugger
if (getToken()) {
// 判断当前用户是否已拉取完user_info信息
if (!useUserStore().name) {
isRelogin.show = true
useUserStore().getInfo().then(() => {
isRelogin.show = false
next() // hack方法 确保addRoutes已完成
}).catch(err => {
useUserStore().logOut().then(() => {
ElMessage.error(err)
next({ path: '/' })
})
})
} else {
next()
}
} else {
// 没有token
next()
}
})
router.afterEach((to) => {
NProgress.done()
})