首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

react router 4-如何创建具有嵌套路由但回退到未找到的根路径

React Router 4 是一个用于 React 应用程序的路由库,它允许我们在应用程序中实现页面之间的导航和路由功能。在 React Router 4 中,我们可以使用嵌套路由来创建具有层次结构的路由系统。

要创建具有嵌套路由但回退到未找到的根路径,我们可以按照以下步骤进行操作:

  1. 首先,确保已经安装了 React Router 4。可以使用以下命令进行安装:
代码语言:txt
复制
npm install react-router-dom
  1. 在应用程序的根组件中,引入所需的模块:
代码语言:txt
复制
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
  1. 创建根组件,并在其中定义路由:
代码语言:txt
复制
const App = () => {
  return (
    <Router>
      <Switch>
        <Route exact path="/" component={Home} />
        <Route path="/nested" component={Nested} />
        <Route component={NotFound} />
      </Switch>
    </Router>
  );
};
  1. 创建 Home 组件和 Nested 组件,并在其中定义嵌套路由:
代码语言:txt
复制
const Home = () => {
  return (
    <div>
      <h1>Home</h1>
      <Link to="/nested">Go to Nested</Link>
    </div>
  );
};

const Nested = () => {
  return (
    <div>
      <h1>Nested</h1>
      <Link to="/">Go to Home</Link>
    </div>
  );
};
  1. 创建 NotFound 组件,用于处理未找到的路径:
代码语言:txt
复制
const NotFound = () => {
  return (
    <div>
      <h1>404 - Not Found</h1>
      <Link to="/">Go to Home</Link>
    </div>
  );
};

在上述代码中,我们使用 <Switch> 组件来确保只有一个路由会被渲染。<Route> 组件用于定义路径和对应的组件。exact 属性用于确保只有在路径完全匹配时才会渲染对应的组件。

当用户访问根路径时,会渲染 Home 组件。在 Home 组件中,我们可以使用 <Link> 组件来导航到嵌套路径 /nested。当用户访问 /nested 路径时,会渲染 Nested 组件。在 Nested 组件中,我们可以使用 <Link> 组件来返回到根路径。

如果用户访问了未定义的路径,会渲染 NotFound 组件,其中包含一个返回到根路径的链接。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券