route.d.ts 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. declare interface VabRouteMeta {
  2. // 高亮指定菜单
  3. activeMenu?: string
  4. // badge小标签(只支持子级)
  5. badge?: string
  6. // 是否隐藏面包屑
  7. breadcrumbHidden?: boolean
  8. // 是否显示小圆点
  9. dot?: boolean
  10. // 动态传参路由是否新开标签页
  11. dynamicNewTab?: boolean
  12. // 权限
  13. guard?: string[] | GuardType
  14. // 是否显示在菜单中显示隐藏路由(默认值:false)
  15. hidden?: boolean
  16. // 图标
  17. icon?: string
  18. // 是否是自定义svg图标(默认值:false)
  19. // 如果设置true,那么需要把您的svg拷贝到icon下,然后icon字段配置上您的图标名
  20. isCustomSvg?: boolean
  21. // 是否显示在菜单中显示隐藏一级路由(默认值:true)
  22. levelHidden?: boolean
  23. // 当前路由是否可关闭多标签页,同上
  24. noClosable?: boolean
  25. // 是否隐藏侧边栏
  26. noColumn?: boolean
  27. // 当前路由是否不缓存(默认值:false)
  28. noKeepAlive?: boolean
  29. // 当前路由是否不显示多标签页
  30. tabHidden?: boolean
  31. // 在新窗口中打开
  32. target?: '_blank' | false
  33. // 菜单、面包屑、多标签页显示的名称
  34. title?: string
  35. // 是否全屏
  36. fullscreen?: boolean
  37. }
  38. // @ts-ignore
  39. declare interface VabRouteRecord extends Omit<RouteRecordRaw, 'meta'> {
  40. path: string
  41. // name 首字母必须大写
  42. name: Capitalize<string>
  43. meta: VabRouteMeta
  44. fullPath?: string
  45. component?: Component | any
  46. components?: Component | string
  47. children?: VabRouteRecord[]
  48. childrenNameList?: (string | undefined)[]
  49. }
  50. declare interface VabRoute extends Omit<VabRouteRecord, 'children' | 'childrenNameList'> {
  51. query?: any
  52. params?: any
  53. matched?: VabRoute[]
  54. }