我正在使用反应路由器 2.7.0。在我的路由配置中,有嵌套路由,每个路由都有自己的同名参数。例如 /route1/:entityId 有一个嵌套路由 /route2/:entityId。react-router 提供的 params 和 routeParams 属性将这些值作为数组提供给两个内容组件。即路径 /route1/43/route2/56 将数组 [43,56] 作为 entityId 参数的值。
这似乎违反直觉,我希望提供给 route1 组件的 routeParams 为 43,而 route2 为 56,但是我得到了两个组件的两个元素的数组。
如何确定数组中的哪个元素用于每个组件?注意:我不能只使用索引,因为我的路由是从元数据构建的,因此可能在 route1 和 route2 之间嵌套了其他路由,并且每条路由都不知道它嵌套在其中的其他路由。所以可能有 5 条路线在玩,并且 route1 和 route2 可以在任何索引 0-4