index.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. import Vue from 'vue'
  2. import VueRouter from 'vue-router'
  3. import Layout from '@/layout'
  4. import Dashboard from './dashboard/index'
  5. import SiteRouter from './SiteRouter'
  6. import ChargeRouter from './ChargeRouter'
  7. import UserRouter from './UserRouterV2'
  8. import PartnershipRouter from './PartnershipRouter'
  9. import EnergyRouter from './EnergyRouter'
  10. import OCPPRouter from './OCPPRouter'
  11. import FinancialRouter from './FinancialRouter'
  12. import IncidentRouter from './IncidentRouter'
  13. import ActivityRouter from './ActivityRouter'
  14. import SupportRouter from './SupportRouter'
  15. import ReportsRouter from './ReportsRouter'
  16. import NotificationRouter from './NotificationRouter'
  17. import AccessRouter from './AccessRouter'
  18. import SettingsRouter from './SettingsRouter'
  19. import additionalRoute from './addition'
  20. import MarketingRouter from './MarketingRouter'
  21. Vue.use(VueRouter)
  22. const constantRoutes = [
  23. {
  24. path: '/',
  25. redirect: '/redirect'
  26. },
  27. {
  28. path: '/redirect',
  29. hidden: true,
  30. component: () => import('@/views/redirect/index')
  31. },
  32. {
  33. path: '/404',
  34. hidden: true,
  35. component: () => import('@/views/redirect/404'),
  36. meta: {
  37. title: "Error"
  38. }
  39. },
  40. {
  41. path: '/login',
  42. component: () => import('@/views/login/login'),
  43. meta: {
  44. title: 'Login'
  45. },
  46. hidden: true
  47. },
  48. /*{
  49. path: '/administrator',
  50. component: Layout,
  51. meta: {
  52. title: 'Administrator',
  53. subTitle: 'Settings',
  54. icon: 'administrator',
  55. activeIcon: 'administrator-active',
  56. affix: true
  57. },
  58. children: [
  59. {
  60. path: '/administrator',
  61. component: () => import('@/views/Administrator'),
  62. name: 'administrator',
  63. meta: {
  64. title: 'Administrator',
  65. subTitle: 'Settings',
  66. icon: 'administrator',
  67. breadcrumb: false,
  68. }
  69. }
  70. ],
  71. },*/
  72. Dashboard.getDashboardRouter(),
  73. SiteRouter,
  74. ChargeRouter,
  75. ActivityRouter,
  76. IncidentRouter,
  77. EnergyRouter,
  78. FinancialRouter,
  79. UserRouter,
  80. SupportRouter,
  81. OCPPRouter,
  82. ...ReportsRouter,
  83. NotificationRouter,
  84. MarketingRouter,
  85. PartnershipRouter,
  86. AccessRouter,
  87. ...additionalRoute,
  88. /*OCPI*/
  89. SettingsRouter
  90. ]
  91. const asyncRoutes = []
  92. export {
  93. constantRoutes,
  94. asyncRoutes,
  95. }
  96. const createRouter = () => new VueRouter({
  97. // mode: 'history', // require service support
  98. scrollBehavior: () => ({
  99. y: 0
  100. }),
  101. routes: constantRoutes
  102. })
  103. const router = createRouter()
  104. // Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465
  105. export function resetRouter() {
  106. const newRouter = createRouter()
  107. router.matcher = newRouter.matcher // reset router
  108. }
  109. export default router