vue-router.d.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import "vue-router"
  2. declare module "vue-router" {
  3. interface RouteMeta {
  4. /**
  5. * 设置该路由在侧边栏和面包屑中展示的名字
  6. */
  7. title?: string
  8. /**
  9. * 设置该路由的图标,记得将 svg 导入 @/icons/svg
  10. */
  11. svgIcon?: string
  12. /**
  13. * 设置该路由的图标,直接使用 Element Plus 的 Icon(与 svgIcon 同时设置时,svgIcon 将优先生效)
  14. */
  15. elIcon?: string
  16. /**
  17. * 默认 false,设置 true 的时候该路由不会在侧边栏出现
  18. */
  19. hidden?: boolean
  20. /**
  21. * 设置能进入该路由的角色,支持多个角色叠加
  22. */
  23. roles?: string[]
  24. /**
  25. * 默认 true,如果设置为 false,则不会在面包屑中显示
  26. */
  27. breadcrumb?: boolean
  28. /**
  29. * 默认 false,如果设置为 true,它则会固定在 tags-view 中
  30. */
  31. affix?: boolean
  32. /**
  33. * 当一个路由下面的 children 声明的路由大于 1 个时,自动会变成嵌套的模式,
  34. * 只有一个时,会将那个子路由当做根路由显示在侧边栏,
  35. * 若想不管路由下面的 children 声明的个数都显示你的根路由,
  36. * 可以设置 alwaysShow: true,这样就会忽略之前定义的规则,一直显示根路由
  37. */
  38. alwaysShow?: boolean
  39. /**
  40. * 示例: activeMenu: "/xxx/xxx",
  41. * 当设置了该属性进入路由时,则会高亮 activeMenu 属性对应的侧边栏。
  42. * 该属性适合使用在有 hidden: true 属性的路由上
  43. */
  44. activeMenu?: string
  45. /**
  46. * 是否缓存该路由页面
  47. * 默认为 false,为 true 时代表需要缓存,此时该路由和该页面都需要设置一致的 Name
  48. */
  49. keepAlive?: boolean
  50. }
  51. }