routes.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import { layout } from "@/app";
  2. /**
  3. * @name umi 的路由配置
  4. * @description 只支持 path,component,routes,redirect,wrappers,name,icon 的配置
  5. * @param path path 只支持两种占位符配置,第一种是动态参数 :id 的形式,第二种是 * 通配符,通配符只能出现路由字符串的最后。
  6. * @param component 配置 location 和 path 匹配后用于渲染的 React 组件路径。可以是绝对路径,也可以是相对路径,如果是相对路径,会从 src/pages 开始找起。
  7. * @param routes 配置子路由,通常在需要为多个路径增加 layout 组件时使用。
  8. * @param redirect 配置路由跳转
  9. * @param wrappers 配置路由组件的包装组件,通过包装组件可以为当前的路由组件组合进更多的功能。 比如,可以用于路由级别的权限校验
  10. * @param name 配置路由的标题,默认读取国际化文件 menu.ts 中 menu.xxxx 的值,如配置 name 为 login,则读取 menu.ts 中 menu.login 的取值作为标题
  11. * @param icon 配置路由的图标,取值参考 https://ant.design/components/icon-cn, 注意去除风格后缀和大小写,如想要配置图标为 <StepBackwardOutlined /> 则取值应为 stepBackward 或 StepBackward,如想要配置图标为 <UserOutlined /> 则取值应为 user 或者 User
  12. * @doc https://umijs.org/docs/guides/routes
  13. */
  14. export default [
  15. {
  16. path: '/ui',
  17. layout: false,
  18. routes: [
  19. {
  20. name: 'login',
  21. path: '/ui/login',
  22. component: './User/Login',
  23. },
  24. ],
  25. },
  26. {
  27. path: '/ui/welcome',
  28. name: 'welcome',
  29. icon: 'smile',
  30. component: './Welcome',
  31. },
  32. {
  33. path: '/admin',
  34. name: 'admin',
  35. icon: 'crown',
  36. access: 'canAdmin',
  37. routes: [
  38. {
  39. path: '/admin',
  40. redirect: '/admin/sub-page',
  41. },
  42. {
  43. path: '/admin/sub-page',
  44. name: 'sub-page',
  45. component: './Admin',
  46. },
  47. ],
  48. },
  49. {
  50. name: 'list.table-list',
  51. icon: 'table',
  52. path: '/list',
  53. layout: false,
  54. component: './TableList',
  55. },
  56. {
  57. path: '/',
  58. redirect: '/ui/welcome',
  59. },
  60. {
  61. path: '*',
  62. layout: false,
  63. component: './404',
  64. },
  65. {
  66. path: '/ui',
  67. name: 'gateway',
  68. routes: [
  69. {
  70. name: 'egress',
  71. path: '/ui/egress',
  72. routes: [
  73. {
  74. name: 'api',
  75. path: '/ui/egress/api',
  76. component: './egress/api/table',
  77. },
  78. {
  79. name: 'endpoint',
  80. path: '/ui/egress/endpoint',
  81. component: './egress/endpoint/table',
  82. },
  83. {
  84. name: 'api-loan-integration',
  85. path: '/ui/egress/loan-integration',
  86. component: './egress/loan/integration',
  87. hideInMenu: true,
  88. },
  89. ],
  90. },
  91. ],
  92. },
  93. ];