首页 > 解决方案 > 在浏览器(react-router-dom)中直接输入url时如何修复404错误?

问题描述

我想让用户在输入例如www.page-url.com/about-us时访问特定页面,而不是通过www.page-url.com然后在导航栏中选择关于我们。当我输入www.page-url.com/about-us时,我收到 404 错误(找不到页面)。如何防止这种行为?我已经尝试了与 SO 上的问题不同的解决方案,但没有一个有效。

路由器代码:

<Router >
        <MobileNavbar />
        <Navbar />
        <Switch>
          <Route path='/' exact component={Home} />
          <Route path='/om-oss' component={AboutUs} />
          <Route path='/sponsorar' component={Sponsor} />
          <Route path='/bli-sponsor' component={BecomeSponsor} />
          <Route path='/bli-medlem' component={BecomeMember} />
          <Route path='/admin' exact component={Admin} />
          <Route path='/admin-login' exact component={AdminLogin} />
          <Route path="/admin/bytt-passord" exact component={ChangeCreds} />
          <Route path="/admin/medlemer" exact component={Members} />
          <Route path="/til-foreldre" component={Parents} />
          <Route path="/kalendar" component={Calendar} />
          <Route path="/admin/kalendar" exact component={AdminCalendar} />
        </Switch>
        <Footer />
      </Router>

标签: javascriptreactjsreact-routerreact-router-dom

解决方案


当用户键入一些您不支持的路线时,您可以拥有一条全部路线。将此添加到Switch的底部。

<Route path='*'><SomeComponent /></Route>

抓住所有路线


推荐阅读