import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) /* Layout */ import Layout from '../views/layout/Layout' /** * hidden: true if `hidden:true` will not show in the sidebar(default is false) * alwaysShow: true if set true, will always show the root menu, whatever its child routes length * if not set alwaysShow, only more than one route under the children * it will becomes nested mode, otherwise not show the root menu * redirect: noredirect if `redirect:noredirect` will no redirct in the breadcrumb * name:'router-name' the name is used by (must set!!!) * meta : { title: 'title' the name show in submenu and breadcrumb (recommend set) icon: 'svg-name' the icon show in the sidebar, } **/ export const constantRouterMap = [ {path: '/login', component: () => import('@/views/login/index'), hidden: true}, {path: '/404', component: () => import('@/views/404'), hidden: true}, { path: '', component: Layout, redirect: '/home', meta: {title: '首页', icon: 'home'}, children: [{ path: 'home', name: 'home', component: () => import('@/views/home/index'), meta: {title: '仪表盘', icon: 'dashboard'} }, { name: 'document', path: 'https://www.macrozheng.com', meta: {title: '学习教程', icon: 'document'} }, { name: 'video', path: 'https://www.macrozheng.com/mall/catalog/mall_video.html', meta: {title: '视频教程', icon: 'video'} }, ] } ] export const asyncRouterMap = [ { path: '/pms', component: Layout, redirect: '/pms/product', name: 'pms', meta: {title: '商品', icon: 'product'}, children: [{ path: 'product', name: 'product', component: () => import('@/views/pms/product/index'), meta: {title: '商品列表', icon: 'product-list'} }, { path: 'addProduct', name: 'addProduct', component: () => import('@/views/pms/product/add'), meta: {title: '添加商品', icon: 'product-add'} }, { path: 'updateProduct', name: 'updateProduct', component: () => import('@/views/pms/product/update'), meta: {title: '修改商品', icon: 'product-add'}, hidden: true }, { path: 'productCate', name: 'productCate', component: () => import('@/views/pms/productCate/index'), meta: {title: '商品分类', icon: 'product-cate'} }, { path: 'addProductCate', name: 'addProductCate', component: () => import('@/views/pms/productCate/add'), meta: {title: '添加商品分类'}, hidden: true }, { path: 'updateProductCate', name: 'updateProductCate', component: () => import('@/views/pms/productCate/update'), meta: {title: '修改商品分类'}, hidden: true }, { path: 'productAttr', name: 'productAttr', component: () => import('@/views/pms/productAttr/index'), meta: {title: '商品类型', icon: 'product-attr'} }, { path: 'productAttrList', name: 'productAttrList', component: () => import('@/views/pms/productAttr/productAttrList'), meta: {title: '商品属性列表'}, hidden: true }, { path: 'addProductAttr', name: 'addProductAttr', component: () => import('@/views/pms/productAttr/addProductAttr'), meta: {title: '添加商品属性'}, hidden: true }, { path: 'updateProductAttr', name: 'updateProductAttr', component: () => import('@/views/pms/productAttr/updateProductAttr'), meta: {title: '修改商品属性'}, hidden: true }, { path: 'brand', name: 'brand', component: () => import('@/views/pms/brand/index'), meta: {title: '品牌管理', icon: 'product-brand'} }, { path: 'addBrand', name: 'addBrand', component: () => import('@/views/pms/brand/add'), meta: {title: '添加品牌'}, hidden: true }, { path: 'updateBrand', name: 'updateBrand', component: () => import('@/views/pms/brand/update'), meta: {title: '编辑品牌'}, hidden: true } ] }, { path: '/oms', component: Layout, redirect: '/oms/order', name: 'oms', meta: {title: '订单', icon: 'order'}, children: [ { path: 'order', name: 'order', component: () => import('@/views/oms/order/index'), meta: {title: '订单列表', icon: 'product-list'} }, { path: 'orderDetail', name: 'orderDetail', component: () => import('@/views/oms/order/orderDetail'), meta: {title: '订单详情'}, hidden:true }, { path: 'deliverOrderList', name: 'deliverOrderList', component: () => import('@/views/oms/order/deliverOrderList'), meta: {title: '发货列表'}, hidden:true }, { path: 'orderSetting', name: 'orderSetting', component: () => import('@/views/oms/order/setting'), meta: {title: '订单设置', icon: 'order-setting'} }, { path: 'returnApply', name: 'returnApply', component: () => import('@/views/oms/apply/index'), meta: {title: '退货申请处理', icon: 'order-return'} }, { path: 'returnReason', name: 'returnReason', component: () => import('@/views/oms/apply/reason'), meta: {title: '退货原因设置', icon: 'order-return-reason'} }, { path: 'returnApplyDetail', name: 'returnApplyDetail', component: () => import('@/views/oms/apply/applyDetail'), meta: {title: '退货原因详情'}, hidden:true } ] }, { path:'/sms', component: Layout, redirect: '/sms/coupon', name: 'sms', meta: {title: '营销', icon: 'sms'}, children: [ { path: 'flash', name: 'flash', component: () => import('@/views/sms/flash/index'), meta: {title: '秒杀活动列表', icon: 'sms-flash'} }, { path: 'flashSession', name: 'flashSession', component: () => import('@/views/sms/flash/sessionList'), meta: {title: '秒杀时间段列表'}, hidden:true }, { path: 'selectSession', name: 'selectSession', component: () => import('@/views/sms/flash/selectSessionList'), meta: {title: '秒杀时间段选择'}, hidden:true }, { path: 'flashProductRelation', name: 'flashProductRelation', component: () => import('@/views/sms/flash/productRelationList'), meta: {title: '秒杀商品列表'}, hidden:true }, { path: 'coupon', name: 'coupon', component: () => import('@/views/sms/coupon/index'), meta: {title: '优惠券列表', icon: 'sms-coupon'} }, { path: 'addCoupon', name: 'addCoupon', component: () => import('@/views/sms/coupon/add'), meta: {title: '添加优惠券'}, hidden:true }, { path: 'updateCoupon', name: 'updateCoupon', component: () => import('@/views/sms/coupon/update'), meta: {title: '修改优惠券'}, hidden:true }, { path: 'couponHistory', name: 'couponHistory', component: () => import('@/views/sms/coupon/history'), meta: {title: '优惠券领取详情'}, hidden:true }, { path: 'brand', name: 'homeBrand', component: () => import('@/views/sms/brand/index'), meta: {title: '品牌推荐', icon: 'product-brand'} }, { path: 'new', name: 'homeNew', component: () => import('@/views/sms/new/index'), meta: {title: '新品推荐', icon: 'sms-new'} }, { path: 'hot', name: 'homeHot', component: () => import('@/views/sms/hot/index'), meta: {title: '人气推荐', icon: 'sms-hot'} }, { path: 'subject', name: 'homeSubject', component: () => import('@/views/sms/subject/index'), meta: {title: '专题推荐', icon: 'sms-subject'} }, { path: 'advertise', name: 'homeAdvertise', component: () => import('@/views/sms/advertise/index'), meta: {title: '广告列表', icon: 'sms-ad'} }, { path: 'addAdvertise', name: 'addHomeAdvertise', component: () => import('@/views/sms/advertise/add'), meta: {title: '添加广告'}, hidden:true }, { path: 'updateAdvertise', name: 'updateHomeAdvertise', component: () => import('@/views/sms/advertise/update'), meta: {title: '编辑广告'}, hidden:true } ] }, { path:'/ums', component: Layout, redirect: '/ums/admin', name: 'ums', meta: {title: '权限', icon: 'ums'}, children: [ { path: 'admin', name: 'admin', component: () => import('@/views/ums/admin/index'), meta: {title: '用户列表', icon: 'ums-admin'} }, { path: 'role', name: 'role', component: () => import('@/views/ums/role/index'), meta: {title: '角色列表', icon: 'ums-role'} }, { path: 'allocMenu', name: 'allocMenu', component: () => import('@/views/ums/role/allocMenu'), meta: {title: '分配菜单'}, hidden: true }, { path: 'allocResource', name: 'allocResource', component: () => import('@/views/ums/role/allocResource'), meta: {title: '分配资源'}, hidden: true }, { path: 'menu', name: 'menu', component: () => import('@/views/ums/menu/index'), meta: {title: '菜单列表', icon: 'ums-menu'} }, { path: 'addMenu', name: 'addMenu', component: () => import('@/views/ums/menu/add'), meta: {title: '添加菜单'}, hidden: true }, { path: 'updateMenu', name: 'updateMenu', component: () => import('@/views/ums/menu/update'), meta: {title: '修改菜单'}, hidden: true }, { path: 'resource', name: 'resource', component: () => import('@/views/ums/resource/index'), meta: {title: '资源列表', icon: 'ums-resource'} }, { path: 'resourceCategory', name: 'resourceCategory', component: () => import('@/views/ums/resource/categoryList'), meta: {title: '资源分类'}, hidden: true } ] }, {path: '*', redirect: '/404', hidden: true} ] export default new Router({ // mode: 'history', //后端支持可开 scrollBehavior: () => ({y: 0}), routes: constantRouterMap })