路由传递params参数(useParams和useRouteMatch)

umi3采用的是都是React Router5,hooks传递参数使用useParams和useRouteMatch等方式。

但是父级路由是无法访问子路由的参数的,比如

{
    path: '/parent',
    component: '@/components/ParentLayout',
    routes: [
      {
        path: '/parent/info/:id',
        component: './parent/Info',
      },
      {
        path: '/parent/optInfo/:id',
        component: './parent/OptInfo',
      },
    ],
  },

应改为:

{
    path: '/parent/:type/:id',
    component: '@/components/ParentLayout',
    routes: [
      {
        path: '/parent/info/:id',
        component: './parent/Info',
      },
      {
        path: '/parent/optInfo/:id',
        component: './parent/OptInfo',
      },
    ],
  },

通过useParams获取参数

import { useParams, useRouteMatch } from 'umi'
console.log(useParams())
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容