index.ts
1.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import type { App } from 'vue'
import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'
import { RedirectRoute } from '@/router/base'
import { createRouterGuards } from './router-guards'
import { PageEnum } from '@/enums/pageEnum'
import { HttpErrorPage, LoginRoute, ReloadRoute } from '@/router/base'
import { Layout } from '@/router/constant'
import modules from '@/router/modules'
// THINGS_KIT 重写路由拦截逻辑
import { setupRouterGuard } from './external/guard'
// THINGS_KIT 新增分享路由
import { shareRoutes } from './external/share.route'
const RootRoute: Array<RouteRecordRaw> = [
  {
    path: '/',
    name: 'Root',
    redirect: PageEnum.BASE_HOME,
    component: Layout,
    meta: {
      title: 'Root',
    },
    children: [
      ...HttpErrorPage,
      modules.projectRoutes,
      modules.chartRoutes,
      modules.previewRoutes,
      modules.editRoutes,
      // THINGS_KIT 新增分享路由
      shareRoutes
    ]
  }
]
export const constantRouter: any[] = [LoginRoute, ...RootRoute, RedirectRoute, ReloadRoute];
const router = createRouter({
  history: createWebHashHistory(''),
  routes: constantRouter,
  strict: true,
})
export function setupRouter(app: App) {
  app.use(router);
  // 创建路由守卫
  // THINGS_KIT 修改路由拦截
  // createRouterGuards(router)
  setupRouterGuard(router)
}
export default router