使用备用路由配置进行React Router重定向

时间:2015-12-21 23:10:09

标签: reactjs react-router

我想使用React Router的备用配置:https://github.com/rackt/react-router/blob/1.0.x/docs/guides/basics/RouteConfiguration.md#alternate-configuration

但是,我无法重定向工作。我试过这个:

const routes = {
  childRoutes: [
    { path: '/test', component: Test },
  ],
  component: App,
  path: '/',
  redirect: {
    from: '/',
    to: '/test',
  },
};

据我所知,没有相关文件。功能是否存在?应该怎么做?

1 个答案:

答案 0 :(得分:1)

将您发布的链接中的示例代码与上面的示例(在Preserving URLs中)进行比较,我认为两个示例都指的是设置相同的路由(唯一的区别可能是最后一个使用备用配置)。我们可以推断出当前的重定向方式是使用onEnter函数。

例如,如果你想要这个(使用 JSX ):

<Redirect from="messages/:id" to="/messages/:id" />

你使用备用配置,你必须这样写:

{ path: 'messages/:id',
  onEnter: function (nextState, replaceState) {
    replaceState(null, '/messages/' + nextState.params.id)
  }
}

更新:您的特定情况很特殊,因为您想从/重定向,因此您可能想尝试使用IndexRedirectindexroute。< / p>