|
@@ -1,6 +1,7 @@
|
|
|
import Vue from 'vue';
|
|
|
import VueRouter from 'vue-router';
|
|
|
import store from '@/store/index';
|
|
|
+const jwt = require('jsonwebtoken');
|
|
|
|
|
|
Vue.use(VueRouter);
|
|
|
|
|
@@ -222,10 +223,19 @@ const router = new VueRouter({
|
|
|
router.beforeEach(async (to, form, next) => {
|
|
|
if (to.name == 'user_index') {
|
|
|
let res = await store.dispatch('login/toGetUser');
|
|
|
+ console.log(res);
|
|
|
if (res && res.uid) {
|
|
|
+ console.log('1');
|
|
|
next();
|
|
|
} else {
|
|
|
- next({ name: 'login' });
|
|
|
+ let key = sessionStorage.getItem('token');
|
|
|
+ let user = jwt.decode(key);
|
|
|
+ if (user && user.uid) {
|
|
|
+ store.commit('setUser', user, { root: true });
|
|
|
+ next();
|
|
|
+ } else {
|
|
|
+ next({ name: 'login' });
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
let res = await store.dispatch('login/toGetUser');
|