import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) /* Layout */ import Layout from '@/layout' /* 所有角色可以访问/没有权限要求的基页 */ import codemenu from './modules/codemenu' export const constantRoutes = [ { path: '/', redirect: 'login' }, { path: '/login', component: () => import('@/views/login/login.vue') }, // { // path: '/', // redirect: 'index' // }, // { // path: '/index', // component: () => import('@/views/index.vue'), // name: 'index' // }, { path: '/index', component: Layout, redirect: '/index', children: [{ path: '/index', component: () => import('@/views/index.vue'), name: 'index', meta: { title: '主页', noCache: true, affix: true } }] }, { path: '/salesOrder', component: Layout, redirect: '/salesOrder', meta: { title: '销售订单管理' }, children: [{ path: '/salesOrder/salesOrder', component: () => import('@/views/salesOrder/salesOrder'), name: 'SalesOrder', meta: { title: '销售订单管理', noCache: true } }, ] }, { path: '/purchase', component: Layout, redirect: '/purchase', meta: { title: '采购管理' }, children: [{ path: '/purchaseOrder/index', component: () => import('@/views/purchase/purchaseOrder/index'), name: 'PurchaseOrder', meta: { title: '采购订单', noCache: true } }, ] }, // { // path: '/baseInfo', // component: Layout, // redirect: null, // meta: { // title: '基础信息' // }, // children: [{ // path: '/warehouses/warehouse', // name: 'Warehouse', // component: () => import('@/views/baseInfo/warehouses/warehouse/index'), // meta: { // title: '仓库管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/warehouses/warehouseArea', // name: 'WarehouseArea', // component: () => import('@/views/baseInfo/warehouses/warehouseArea/index'), // meta: { // title: '库区管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/warehouses/warehouseAreaType', // name: 'WarehouseAreaType', // component: () => import('@/views/baseInfo/warehouses/warehouseAreaType/index'), // meta: { // title: '库区类型管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/warehouses/goodsShelves', // name: 'GoodsShelves', // component: () => import('@/views/baseInfo/warehouses/goodsShelves/index'), // meta: { // title: '库位管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/supplier/supplier', // name: 'Supplier', // component: () => import('@/views/baseInfo/supplier/supplier/supplier'), // meta: { // title: '供应商管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/supplier/suppliertype', // name: 'Suppliertype', // component: () => import('@/views/baseInfo/supplier/suppliertype/suppliertype'), // meta: { // title: '供应商类型管理', // icon: 'product-add' // }, // hidden: true // }, // ] // }, // { // path: '/goods', // component: Layout, // redirect: null, // meta: { // title: '商品管理' // }, // children: [{ // path: '/brands/index', // name: 'Brands', // component: () => import('@/views/goods/brands/index'), // meta: { // title: '品牌管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/category/index', // name: 'Category', // component: () => import('@/views/goods/category/index'), // meta: { // title: '商品类别', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/factory/index', // name: 'Factory', // component: () => import('@/views/goods/factory/index'), // meta: { // title: '厂家管理', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/unit/index', // name: 'Unit', // component: () => import('@/views/goods/unit/index'), // meta: { // title: '计量单位', // icon: 'product-add' // }, // hidden: true // }, // { // path: '/goods/index', // name: 'Goods', // component: () => import('@/views/goods/goods/index'), // meta: { // title: '商品管理', // icon: 'product-add' // }, // hidden: true // }, // ] // }, // { // path: '/inStorage', // component: Layout, // redirect: '/inStorage', // meta: { // title: '入库管理' // }, // children: [{ // path: '/deliveryNotice/index', // component: () => import('@/views/inStorage/deliveryNotice/index'), // name: 'DeliveryNotice', // meta: { // title: '到货通知单', // noCache: true // } // }, // { // path: '/receivingGoods/index', // component: () => import('@/views/inStorage/receivingGoods/index'), // name: 'ReceivingGoods', // meta: { // title: '收货单管理', // noCache: true // } // }, // { // path: '/upShelf/index', // component: () => import('@/views/inStorage/upShelf/index'), // name: 'UpShelf', // meta: { // title: '上架单管理', // noCache: true // } // }, // ] // }, // { // path: '/outStorage', // component: Layout, // redirect: '/outStorage', // meta: { // title: '出库管理' // }, // children: [{ // path: '/outStorage/index', // component: () => import('@/views/outStorage/index'), // name: 'OutStorage', // meta: { // title: '出库单管理', // noCache: true // } // }, // ] // }, // { // path: '/storage', // component: Layout, // redirect: '/storage', // meta: { // title: '库存管理' // }, // children: [{ // path: '/inventory/inventory', // component: () => import('@/views/storage/inventory/inventory.vue'), // name: 'Inventory', // meta: { // title: '库存查询', // noCache: true // } // }, // { // path: '/stocktaking/index', // component: () => import('@/views/storage/stocktaking/index'), // name: 'Stocktaking', // meta: { // title: '盘点管理', // noCache: true // } // }, // ] // }, // { // path: '/reports', // component: Layout, // redirect: '/reports', // meta: { // title: '报表管理' // }, // children: [ { // path: '/inOutStorage/index', // component: () => import('@/views/reports/inOutStorage/index.vue'), // name: 'InventoryRefer', // meta: { title: '出入库查询', noCache: true } // }, // ] // }, { path: '/system', component: Layout, redirect: '/system', meta: { title: '系统设置' }, children: [{ path: '/organizationManage/organizationManage', component: () => import('@/views/system/organizationManage/organizationManage.vue'), name: 'OrganizationManage', meta: { icon: 'el-icon-menu', title: '组织管理' } }, { path: '/postManage/postManage', component: () => import('@/views/system/postManage/postManage.vue'), name: 'PostManage', meta: { icon: 'el-icon-menu', title: '岗位管理' } }, { path: '/userManage/userManage', component: () => import('@/views/system/userManage/userManage.vue'), name: 'UserManage', meta: { icon: 'el-icon-menu', title: '用户管理' } }, { path: '/roleAdminister/roleAdminister', component: () => import('@/views/system/roleAdminister/roleAdminister.vue'), name: 'RoleAdminister', meta: { icon: 'el-icon-menu', title: '角色管理' } }, { path: '/menuManage/menuManage', component: () => import('@/views/system/menuManage/menuManage.vue'), name: 'MenuManage', meta: { icon: 'el-icon-menu', title: '菜单管理' } }, { path: '/dictManage/dictManage', component: () => import('@/views/system/dictManage/dictManage.vue'), name: 'DictManage', meta: { icon: 'el-icon-menu', title: '数据字典' } }, { path: '/logManage/logManage', component: () => import('@/views/system/logManage/logManage.vue'), name: 'LogManage', meta: { icon: 'el-icon-menu', title: '日志管理' } }, ] }, ...codemenu, { path: '/404', component: () => import('@/views/404'), hidden: true } // 404 page must be placed at the end !!! // { path: '*', redirect: '/404', hidden: true } ] const createRouter = () => new Router({ // mode: 'history', // require service support scrollBehavior: () => ({ y: 0 }), routes: constantRoutes }) const router = createRouter() // Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 export function resetRouter() { const newRouter = createRouter() router.matcher = newRouter.matcher // reset router } export default router