繁体   English   中英

react-router 4不会让我重定向回首页吗?

[英]react-router four won't let me redirect back to home?

我使用react-router 4有这样的东西:

    <Route exact path="/" children={({match}) => (
      <TransitionGroup component={firstChild}>
        {match && <Home match={match} />}
      </TransitionGroup>
    )}/>
    <Route exact path="/idea/:id" children={({match}) => (
      <TransitionGroup component={firstChild}>
        {match && <IdeaDetails match={match} />}
      </TransitionGroup>
    )}/>
    <Redirect from='*' to='/' />

基本上,如果有人输入了除idea/:id以外的其他网址,我想将他们重定向回首页。 当我运行此代码时,似乎可以预期。 除了在开发人员控制台中,我看到此警告

警告:您试图重定向到当前使用的相同路由:“ /”

有没有一种方法可以定义我拥有的路线而不会触发此警告? 一旦找到其中一个路由规则,是否有办法告诉React路由器不要处理任何后续路由规则?

一旦找到其中一个路由规则,是否有办法告诉React路由器不要处理任何后续路由规则?

是的,您需要将路由包装在Switch组件中 当您的路由包装在Switch ,它将找到第一条匹配的路由,然后不继续进行返回。 如果没有Switch ,路由器将返回与当前URL匹配的所有路由。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM