import Vue from 'vue' import VueRouter from 'vue-router' import Layout from '../views/layout/index.vue' import Login from '../views/login/login.vue' import local from '../utils/local' Vue.use(VueRouter) const routes = [ { path: '/login', component: Login, meta: { title: '登录', activeMenu: '/login' } }, { path: '/', component: Layout, redirect: '/disease-resistance/disease-resistance', meta: { title: '首页', activeMenu: '/disease-resistance/disease-resistance' } }, { // 遗传病风险 path: '/disease-resistance', component: Layout, children: [ { path: '/disease-resistance/disease-resistance', component: () => import('../views/disease-resistance/disease-resistance.vue'), meta: { title: '遗传病风险', activeMenu: '/disease-resistance/disease-resistance' } } ] } ] const router = new VueRouter({ routes }) // 前置路由守卫 router.beforeEach((to, from, next) => { // to到哪里取 from 从哪里来 next 放行 const token = local.get('token_sd') if (to.meta.title) { // 修改总标题 document.title = '肉牛溯源系统' + '-' + to.meta.title // routes数组中--meta是关键 } if (token) { // ok next() } else { // no if (to.path === '/login') { next() } next('/login') } }) export default router