重定向反应路由器父JSX路由

时间:2016-11-02 06:16:45

标签: reactjs react-router

所以,我想将父路由重定向到子路由。像下面这样......

<Redirect path='legal' to='terms-and-conditions'>
  <Redirect path='tac' to='terms-and-conditions' />
  <Route path='terms-and-conditions' component={TermsAndConditions} />
</Redirect>

但是,我收到错误<Redirect> should not have a "children" prop。我理解为什么,但有没有办法实现这一目标?

2 个答案:

答案 0 :(得分:0)

要实现重定向,您应该采用这种格式。

<Route component={App}>
  <Route path="terms-and-conditions" component={TermsAndConditions} />
  <Redirect from="tac" to="terms-and-conditions" />
</Route>

答案 1 :(得分:0)

实现重定向到孩子的解决方案是使用IndexRedirect,如下所示:

<Route path='legal'>
  <IndexRedirect to='terms-and-conditions' />

  <Redirect from='tac' to='terms-and-conditions' />
  <Route path='terms-and-conditions' component={TermsAndConditions} />
</Route>

IndexRedirect documentation

但是,我目前遇到的问题是重定向实际上似乎并不适用于我的情况。 /legal路由会在我的情况下生成一个空白页。