index.js 3.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. Vue.use(Router)
  4. /* Layout */
  5. import Layout from '@/views/layout/Layout'
  6. import role from './modules/role'
  7. import article from './modules/article'
  8. import member from './modules/member'
  9. import org from './modules/org'
  10. import marketing_tool from './modules/marketing_tool'
  11. import system from './modules/system'
  12. import site from './modules/site'
  13. import kefu from './modules/kefu'
  14. /** note: submenu only apppear when children.length>=1
  15. * detail see https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
  16. **/
  17. /**
  18. * hidden: true if `hidden:true` will not show in the sidebar(default is false)
  19. * alwaysShow: true if set true, will always show the root menu, whatever its child routes length
  20. // 详见 xt_permission.xt_filterAsyncRouter 函数的逻辑
  21. is_menu: false 加载路由时验证用的(即该路由是否要在侧边栏展示,需要展示的即需要),为 false 时表示该路由不需要进行权限验证
  22. * if not set alwaysShow, only more than one route under the children
  23. * it will becomes nested mode, otherwise not show the root menu
  24. * redirect: noredirect if `redirect:noredirect` will no redirct in the breadcrumb
  25. * name:'router-name' the name is used by <keep-alive> (must set!!!)
  26. * meta : {
  27. title: 'title' the name show in submenu and breadcrumb (recommend set)
  28. icon: 'svg-name' the icon show in the sidebar,
  29. noCache: true if true ,the page will no be cached(default is false)
  30. // 详见 xt_permission.xt_filterAsyncRouter 函数的逻辑
  31. is_menu: false 加载路由时验证用的,为 false 时表示该路由不需要进行权限验证
  32. hidden: false 加载路由时验证用的,is_menu 为true时才有作用,为 true 时表示该路由需要进行权限验证
  33. }
  34. **/
  35. var _constant_router_map = [{
  36. path: '/token/verify',
  37. component: () => import('@/scrm_pages/index/verify_token'),
  38. hidden: true
  39. },
  40. {
  41. path: '/404',
  42. component: () => import('@/views/errorPage/404'),
  43. hidden: true
  44. },
  45. {
  46. path: '/401',
  47. component: () => import('@/views/errorPage/401'),
  48. hidden: true
  49. },
  50. {
  51. path: '',
  52. component: ()=>import('@/scrm_pages/qrcode/qrcode'),
  53. redirect: '/qrcode',
  54. children: [{
  55. path: '/qrcode',
  56. component: () => import('@/scrm_pages/qrcode/qrcode'),
  57. name: 'qrcode',
  58. meta: {
  59. title: 'qrcode',
  60. icon: 'dashboard',
  61. noCache: true
  62. }
  63. }]
  64. },
  65. {
  66. path: '/activity/preview',
  67. component: () => import('@/scrm_pages/marketing_tool/activity_preview'),
  68. hidden: true
  69. }
  70. // service
  71. ]
  72. var _asy_router_map = [
  73. member,
  74. kefu,
  75. article,
  76. marketing_tool,
  77. org,
  78. system,
  79. site,
  80. role,
  81. ]
  82. var is_asy_router = process.env.NODE_ENV === 'production' // true; 设置为 true 强制进行路由验证
  83. if (!is_asy_router) {
  84. _constant_router_map = _constant_router_map.concat(_asy_router_map)
  85. _asy_router_map = []
  86. } else {
  87. }
  88. export const xt_constantRouterMap = _constant_router_map
  89. export const xt_asyncRouterMap = _asy_router_map
  90. export default new Router({
  91. // mode: 'history', // require service support
  92. scrollBehavior: () => ({
  93. y: 0
  94. }),
  95. routes: xt_constantRouterMap
  96. })