初始化项目
This commit is contained in:
@@ -1,98 +0,0 @@
|
||||
/**
|
||||
* 全站权限配置
|
||||
*
|
||||
*/
|
||||
import router from './router/router'
|
||||
import store from './store'
|
||||
import {validatenull} from '@/util/validate'
|
||||
import {getToken} from '@/util/auth'
|
||||
import NProgress from 'nprogress' // progress bar
|
||||
import 'nprogress/nprogress.css' // progress bar style
|
||||
import {
|
||||
setStore,
|
||||
getStore,
|
||||
} from '@/util/store'
|
||||
NProgress.configure({showSpinner: false});
|
||||
const lockPage = store.getters.website.lockPage; //锁屏页
|
||||
router.beforeEach((to, from, next) => {
|
||||
const meta = to.meta || {};
|
||||
const isMenu = meta.menu === undefined ? to.query.menu : meta.menu;
|
||||
store.commit('SET_IS_MENU', isMenu === undefined);
|
||||
if (getToken()) {
|
||||
if (store.getters.isLock && to.path !== lockPage) { //如果系统激活锁屏,全部跳转到锁屏页
|
||||
next({path: lockPage})
|
||||
} else if (to.path === '/login') { //如果登录成功访问登录页跳转到主页
|
||||
next({path: '/'})
|
||||
} else {
|
||||
//如果用户信息为空则获取用户信息,获取用户信息失败,跳转到登录页
|
||||
if (store.getters.token.length === 0) {
|
||||
store.dispatch('FedLogOut').then(() => {
|
||||
next({path: '/login'})
|
||||
})
|
||||
} else {
|
||||
const value = to.query.src || to.fullPath;
|
||||
const label = to.query.name || to.name;
|
||||
const meta = to.meta || router.$avueRouter.meta || {};
|
||||
const i18n = to.query.i18n;
|
||||
// to在这里表示要获取的数据
|
||||
var helpSwitch = store.state.common.helpSwitch
|
||||
var toObj = to.query.obj ? JSON.parse(to.query.obj) : {}
|
||||
if (toObj && toObj.isShow === 1) {
|
||||
setStore({
|
||||
name: 'queryHelp',
|
||||
content: to.query.obj
|
||||
})
|
||||
store.dispatch('jlHelpShow', true)
|
||||
if (helpSwitch === 2) {
|
||||
store.dispatch('jlHelpTag', false)
|
||||
console.log('抱歉,您当前已关闭此模块')
|
||||
} else {
|
||||
// 调用store进行数据获取
|
||||
store.dispatch('jlHelpList', toObj)
|
||||
}
|
||||
} else {
|
||||
setStore({
|
||||
name: 'queryHelp',
|
||||
content: {}
|
||||
})
|
||||
store.dispatch('jlHelpShow', false)
|
||||
}
|
||||
if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) {
|
||||
store.commit('ADD_TAG', {
|
||||
code: meta.code,
|
||||
label: label,
|
||||
value: value,
|
||||
params: to.params,
|
||||
query: to.query,
|
||||
meta: (() => {
|
||||
if (!i18n) {
|
||||
return meta
|
||||
}
|
||||
return {
|
||||
i18n: i18n
|
||||
}
|
||||
})(),
|
||||
group: router.$avueRouter.group || []
|
||||
});
|
||||
}
|
||||
next()
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//判断是否需要认证,没有登录访问去登录页
|
||||
if (meta.isAuth === false) {
|
||||
next()
|
||||
} else {
|
||||
next('/login')
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
router.afterEach(() => {
|
||||
NProgress.done();
|
||||
let title = store.getters.tag.label;
|
||||
let i18n = store.getters.tag.meta.i18n;
|
||||
title = router.$avueRouter.generateTitle(title, i18n)
|
||||
//根据当前的标签也获取label的值动态设置浏览器标题
|
||||
router.$avueRouter.setTitle(title);
|
||||
});
|
||||
Reference in New Issue
Block a user