import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) /* Layout */ import Layout from '@/layout' /** * Note: 路由配置项 * * hidden: true // 当设置 true 的时候该路由不会再侧边栏出现 如401,login等页面,或者如一些编辑页面/edit/1 * alwaysShow: true // 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面 * // 只有一个时,会将那个子路由当做根路由显示在侧边栏--如引导页面 * // 若你想不管路由下面的 children 声明的个数都显示你的根路由 * // 你可以设置 alwaysShow: true,这样它就会忽略之前定义的规则,一直显示根路由 * redirect: noRedirect // 当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 * name:'router-name' // 设定路由的名字,一定要填写不然使用时会出现各种问题 * meta : { noCache: true // 如果设置为true,则不会被 缓存(默认 false) title: 'title' // 设置该路由在侧边栏和面包屑中展示的名字 icon: 'svg-name' // 设置该路由的图标,对应路径src/assets/icons/svg breadcrumb: false // 如果设置为false,则不会在breadcrumb面包屑中显示 activeMenu: '/system/user' // 当路由设置了该属性,则会高亮相对应的侧边栏。 } */ // 公共路由 export const constantRoutes = [{ path: '/redirect', component: Layout, hidden: true, children: [{ path: '/redirect/:path(.*)', component: (resolve) => require(['@/views/redirect'], resolve) }] }, { path: '/login', component: (resolve) => require(['@/views/login'], resolve), hidden: true }, { path: '/register', component: (resolve) => require(['@/views/register'], resolve), hidden: true }, { path: '/404', component: (resolve) => require(['@/views/error/404'], resolve), hidden: true }, { path: '/401', component: (resolve) => require(['@/views/error/401'], resolve), hidden: true }, { path: '', component: Layout, redirect: 'index', children: [{ path: 'index', component: (resolve) => require(['@/views/index'], resolve), name: '首页', meta: { title: '首页', icon: 'dashboard', noCache: true, affix: true } }, ] }, { path: '/user', component: Layout, hidden: true, redirect: 'noredirect', children: [{ path: 'profile', component: (resolve) => require(['@/views/system/user/profile/index'], resolve), name: 'Profile', meta: { title: '个人中心', icon: 'user' } }] }, { path: '/system/user-auth', component: Layout, hidden: true, children: [{ path: 'role/:userId(\\d+)', component: (resolve) => require(['@/views/system/user/authRole'], resolve), name: 'AuthRole', meta: { title: '分配角色', activeMenu: '/system/user' } }] }, { path: '/system/role-auth', component: Layout, hidden: true, children: [{ path: 'user/:roleId(\\d+)', component: (resolve) => require(['@/views/system/role/authUser'], resolve), name: 'AuthUser', meta: { title: '分配用户', activeMenu: '/system/role' } }] }, { path: '/system/dict-data', component: Layout, hidden: true, children: [{ path: 'index/:dictId(\\d+)', component: (resolve) => require(['@/views/system/dict/data'], resolve), name: 'Data', meta: { title: '字典数据', activeMenu: '/system/dict' } }] }, { path: '', component: Layout, redirect: 'admin', children: [{ path: '/recharge/admin', component: (resolve) => require(['@/views/recharge/admin'], resolve), name: '充值管理', meta: { title: '充值管理', icon: 'guanli', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'channel', children: [{ path: '/recharge/channel', component: (resolve) => require(['@/views/recharge/channel'], resolve), name: '充值渠道', meta: { title: '充值渠道', icon: 'tree', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'radio', children: [{ path: '/recharge/radio', component: (resolve) => require(['@/views/recharge/radio'], resolve), name: '充值到账比例', meta: { title: '充值到账比例', icon: 'dashboard', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'qrCode', children: [{ path: '/recharge/qrCode', component: (resolve) => require(['@/views/recharge/qrCode'], resolve), name: '二维码管理', meta: { title: '二维码管理', icon: 'erweima', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'rechargeS', children: [{ path: '/recharge/rechargeS', component: (resolve) => require(['@/views/recharge/recharge'], resolve), name: '用户充值', meta: { title: '用户充值', icon: 'chongzhi', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'detailed', children: [{ path: '/recharge/detailed', component: (resolve) => require(['@/views/recharge/detailed'], resolve), name: '充值明细', meta: { title: '充值明细', icon: 'money', noCache: false, affix: false }, }, ] }, { path: '', component: Layout, redirect: 'reportForm', children: [{ path: '/recharge/reportForm', component: (resolve) => require(['@/views/recharge/reportForm'], resolve), name: '充值报表', meta: { title: '充值报表', icon: 'date-range', noCache: false, affix: false }, }, ] }, ] export default new Router({ mode: 'history', // 去掉url中的# scrollBehavior: () => ({ y: 0 }), routes: constantRoutes })