我有以下路线。
<Route path='/route/:id/other' component={MyLayout} >
<IndexRoute component={Form} />
<Route path='me' component={Form} />
<Route path='nothing' component={NothingComponent} />
<Route path='something' component={SomethingComponent} />
</Route>
在MyLayout
内部组件中,我使用childRoutes
来获取流的当前步骤编号,使用以下内容完成。
routes[0].childRoutes.forEach((route, index) => {
if (route.path === currentStep) {
currentStep = index + 1;
}
});
然后我用它来显示这种格式1 of 3
的消息,其中1
指定步骤并由上面的脚本生成。现在,它会考虑childRoutes
的顺序并显示无效结果,例如2 of 3
代替1 of 3
。
路线的顺序是否会影响这个?
0 = <Route path='me' ...
1 = <Route path='nothing' ...
2 = ...
答案 0 :(得分:0)
事实证明,编写路线的顺序反映了渲染时路线列表中添加的顺序。
<Route path='/route/:id/other' component={MyLayout} >
<IndexRoute component={Form} />
<Route path='me' component={Form} /> = 0
<Route path='nothing' component={NothingComponent} /> = 1
<Route path='something' component={SomethingComponent} /> = 2
</Route>