zhangxiaoxu123
2023-05-04 c1c0e7fd8095d577c43f036844db0cd1f232cef9
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
39
40
41
42
43
44
45
46
47
import Vue from 'vue';
import ViewUI from 'view-design';
import util from '../libs/util';
import VueRouter from 'vue-router';
import Cookies from 'js-cookie';
import { routers } from './router';
 
Vue.use(VueRouter);
 
//路由配置
const RouterConfig = {
    //mode: 'history',
    routes: routers
};
 
export const router = new VueRouter(RouterConfig);
//export const router = new VueRouter();
 
router.beforeEach((to, from, next) => {
    ViewUI.LoadingBar.start();
    util.title(to.meta.title);
    var name = to.name;
    // 白名单
    //var whiteList = ['login', 'regist', 'regist-result', 'relate', 'reset', 'authorize', 'table1'];
    var whiteList = ['login','table1','table2','table3','table4','table5','table6','table7'];
    var isInWhiteList = util.oneOf(name, whiteList);
    if (!Cookies.get('userInfo') && !isInWhiteList) {
        // 判断是否已经登录且页面不在白名单
        next({
            name: 'login'
        });
    } else if (Cookies.get('userInfo') && name == 'login') {
        // 判断是否已经登录且前往的是登录页
        util.title();
        next({
            name: 'home_index'
        });
    } else {
        util.toDefaultPage([...routers], name, router, next);
    }
});
 
router.afterEach((to) => {
    util.openNewPage(router.app, to.name, to.params, to.query);
    ViewUI.LoadingBar.finish();
    window.scrollTo(0, 0);
});