【问题标题】:How to navigate from one route to another route in ReactJS如何在 ReactJS 中从一条路线导航到另一条路线
【发布时间】:2020-06-08 20:39:02
【问题描述】:

我一直在尝试使用 react 和 react-router-dom 开发 Web 应用程序,用户单击我的反应路线上的按钮。理想情况下,我希望用户在单击所述按钮后被导航到全新的页面。

作为参考,我有一个登录页面,其中我有反应路由器允许用户在登录或注册表单之间切换以显示在页面上

<Router>
  <NavLink to="/sign-in" activeClassName="FormTitle__Link--Active" className="FormTitle__Link" > 
  Sign In </NavLink>
   or
  <NavLink exact to="/sign-up" activeClassName="FormTitle__Link--Active" 
  className="FormTitle__Link" > Sign Up </NavLink>

  <Route exact path="/" component={signUpForm}></Route> 
  <Route path="/sign-in" component={signInForm}></Route>
<Router>

^我遗漏了我的一些代码,但只留下了有关 react-router 的部分

登录和注册页面上都有按钮,我想找出一些方法,使用 react-router 或任何其他能够从这些路由导航的方法,因为我试图在内部再次使用 react-router我的 signUpForm/signInForm 文件,但很快发现您不能在路线中使用。

如果我需要澄清任何事情或提供更多信息,请告诉我。 提前致谢

【问题讨论】:

    标签: reactjs react-router


    【解决方案1】:

    如果您的signUpFormsignInForm 组件已正确定义并导入到提供的文件中,您现在唯一需要做的就是将这些&lt;Route .../&gt; 元素放入&lt;Switch/&gt; 组件中。我认为这样的事情会有所帮助:

    <Router>
      <NavLink to="/sign-in" activeClassName="FormTitle__Link--Active" 
        className="FormTitle__Link" > Sign In </NavLink>
       or
      <NavLink exact to="/sign-up" activeClassName="FormTitle__Link--Active" 
      className="FormTitle__Link" > Sign Up </NavLink>
     <Switch>
       <Route exact path="/" component={signUpForm}/> 
       <Route path="/sign-in" component={signInForm}/>
     </Switch>
    <Router>
    

    【讨论】:

    • 究竟如何允许我从我的一条路线导航而不会造成任何问题?在 signInForm 或 signUpForm 等路由组件中,代码会是什么样子?提前致谢
    • &lt;Switch&gt; 组件是react-router-dom 的一部分,这就是它的工作方式。有关更多描述性解释,您可以查看此reacttraining.com/react-router/web/guides/quick-start
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-14
    • 2018-08-04
    • 2021-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    相关资源
    最近更新 更多