干燥机配套车间生产管理系统/云平台服务端
baoshiwei
2024-05-27 fa3ac93010bea3805438ee3ab0a182bfbf7423da
src/router/types.ts
对比新文件
@@ -0,0 +1,58 @@
import { defineComponent } from 'vue'
import type { RouteMeta, RouteRecordRaw } from 'vue-router'
import { RoleEnum } from '/@/enums/roleEnum'
export type Component<T extends any = any> = ReturnType<typeof defineComponent> | (() => Promise<typeof import('*.vue')>) | (() => Promise<T>)
// @ts-ignore
export interface AppRouteRecordRaw extends Omit<RouteRecordRaw, 'meta'> {
   name: string
   meta: RouteMeta
   component?: Component | string
   components?: Component
   children?: AppRouteRecordRaw[]
   props?: Recordable
   fullPath?: string
   alwaysShow?: boolean
}
export interface MenuTag {
   type?: 'primary' | 'error' | 'warn' | 'success'
   content?: string
   dot?: boolean
}
export interface Menu {
   name: string
   icon?: string
   path: string
   // path contains param, auto assignment.
   paramPath?: string
   disabled?: boolean
   children?: Menu[]
   orderNo?: number
   roles?: RoleEnum[]
   meta?: Partial<RouteMeta>
   tag?: MenuTag
   hideMenu?: boolean
   alwaysShow?: boolean
}
export interface MenuModule {
   orderNo?: number
   menu: Menu
}
// export type AppRouteModule = RouteModule | AppRouteRecordRaw;
export type AppRouteModule = AppRouteRecordRaw