| | |
| | | /** |
| | | * å
¨ç«æéé
ç½® |
| | | * |
| | | */ |
| | | 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 |
| | | 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; |
| | | if (to.query.target) { |
| | | window.open(value) |
| | | } else if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) { |
| | | store.commit('ADD_TAG', { |
| | | 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); |
| | | //夿ç»å½é¡µçæ
åµ |
| | | if (router.history.current.fullPath === "/login") { |
| | | title = "ç»å½"; |
| | | } |
| | | //æ ¹æ®å½åçæ ç¾ä¹è·ålabelçå¼å¨æè®¾ç½®æµè§å¨æ é¢ |
| | | router.$avueRouter.setTitle(title); |
| | | }); |
| | | // /** |
| | | // * å
¨ç«æéé
ç½® |
| | | // * |
| | | // */ |
| | | // 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 |
| | | // 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; |
| | | // if (to.query.target) { |
| | | // window.open(value) |
| | | // } else if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) { |
| | | // store.commit('ADD_TAG', { |
| | | // 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); |
| | | // //夿ç»å½é¡µçæ
åµ |
| | | // if (router.history.current.fullPath === "/login") { |
| | | // title = "ç»å½"; |
| | | // } |
| | | // //æ ¹æ®å½åçæ ç¾ä¹è·ålabelçå¼å¨æè®¾ç½®æµè§å¨æ é¢ |
| | | // router.$avueRouter.setTitle(title); |
| | | // }); |