很多程序员喜欢把路由配置集中到一个地方,但路由的配置其实只是普通的数据,在把数据映射到组件上这方面,React 非常强大,Route 其实就是一个普通的组件。
|
|
把 Route 组件像这样包一层,然后在需要使用 Route 的地方使用 RouteWithSubRoutes 子路由可以加到任意路由组件上。
定义组件
|
|
路由配置
|
|
上面的路由配置定义了 4 个组件及其路径信息,其中组件 Snacks 下面还有两个子组件 Spicy 和 Chips。
Router
|
|
流程分析
routes 数组中定义了两个一级组件 Redbull 和 Snacks,使用 RouteWithSubRoutes 实际上就是把这两个组件给定义了。
|
|
同时该组件中又使用了 routes 属性来定义子组件。