Former-commit-id: 5df2296b49b7aa30fd538cd4cba6243fb4c5dcda [formerly 5df2296b49b7aa30fd538cd4cba6243fb4c5dcda [formerly 5df2296b49b7aa30fd538cd4cba6243fb4c5dcda [formerly 5df2296b49b7aa30fd538cd4cba6243fb4c5dcda [formerly 3815f30b8582ad103adcb095d6029d9a49a991d8 [formerly 6d6ac8200dd2f35d0ce5c7d5c64be0f6ada4dd36]]]]] Former-commit-id: 40ca6c487421eb03c7f7319109479c7491a3ceaa Former-commit-id: 7ec071bf88a4110193a80568d192dac33998e0ef Former-commit-id: 6549b8201614da3e4fa18caa0b0aaeac488b4475 [formerly cb49c8b8de3b602f0c429d1b0a98ff9ee2b53e2a] Former-commit-id: fa34fcc37693bb793361336873452b45aa28aad6 Former-commit-id: df95dbbbe950e913c2b4cf05318372055491004e Former-commit-id: 77345827cb3bd27ce976cc5ec685275ac234590a Former-commit-id: f4fff691850c4ab570df39e81eef233944de7024 Former-commit-id: 3ee802ca4169f581928e408af9ea13db8be77e53
48 lines
1.0 KiB
JavaScript
Executable File
48 lines
1.0 KiB
JavaScript
Executable File
import Vue from 'vue'
|
|
import VueRouter from 'vue-router'
|
|
import Cookies from 'js-cookie'
|
|
|
|
import util from '@/libs/util.js'
|
|
|
|
// 路由数据
|
|
import routes from './routes'
|
|
|
|
Vue.use(VueRouter)
|
|
|
|
let router = new VueRouter({ routes })
|
|
|
|
/**
|
|
* 路由拦截
|
|
* 权限验证
|
|
*/
|
|
router.beforeEach((to, from, next) => {
|
|
// 验证当前路由所有的匹配中是否需要有登陆验证的
|
|
if (to.matched.some(r => r.meta.requiresAuth)) {
|
|
// 这里暂时将cookie里是否存有token作为验证是否登陆的条件
|
|
// 请根据自身业务需要修改
|
|
if (Cookies.get('token')) {
|
|
next()
|
|
} else {
|
|
// 没有登陆的时候跳转到登陆界面
|
|
next({
|
|
name: 'login'
|
|
})
|
|
}
|
|
} else {
|
|
// 不需要身份校验 直接通过
|
|
next()
|
|
}
|
|
})
|
|
|
|
router.afterEach(to => {
|
|
// 需要的信息
|
|
const app = router.app
|
|
const { name, params, query } = to
|
|
// 多页控制 打开新的页面
|
|
app.$store.commit('d2adminPageOpenNew', { name, params, query })
|
|
// 更改标题
|
|
util.title(to.meta.title)
|
|
})
|
|
|
|
export default router
|