|
|
@@ -5,6 +5,7 @@ import exam from '@/router/exam'
|
|
|
import teacher from '@/router/teacher'
|
|
|
import store from '@/store/index'
|
|
|
import { jumpToLogin } from '@/api/axios.config'
|
|
|
+import { getUserInfo } from '@/api/user'
|
|
|
Vue.use(VueRouter)
|
|
|
|
|
|
const routes: Array<RouteConfig> = [
|
|
|
@@ -28,11 +29,17 @@ router.beforeEach((to, from, next) => {
|
|
|
const { id_token } = to.query
|
|
|
if (id_token) {
|
|
|
store.commit('setToken', id_token)
|
|
|
+ getUserInfo().then(({ data }) => {
|
|
|
+ store.commit('setUser', data.result)
|
|
|
+ next()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ if (!store.getters.isLogin) {
|
|
|
+ jumpToLogin()
|
|
|
+ } else {
|
|
|
+ next()
|
|
|
+ }
|
|
|
}
|
|
|
- if (!store.getters.isLogin) {
|
|
|
- jumpToLogin()
|
|
|
- }
|
|
|
- next()
|
|
|
})
|
|
|
|
|
|
export default router
|