如何使用React Router处理404错误页面?

在使用 React Router 时,可以通过设置一个特殊的路由来处理 404 错误页面。通常,404 页面用于显示用户访问的路径不存在时的提示信息。以下是实现步骤:

1. 创建 404 组件

首先,创建一个简单的 404 组件。例如,命名为 NotFound.js:

jsx 复制代码
// NotFound.js
import React from 'react';

const NotFound = () => {
  return (
    <div>
      <h1>404 - 页面未找到</h1>
      <p>抱歉,您访问的页面不存在。</p>
    </div>
  );
};

export default NotFound;

2. 在路由中添加 404 路由

在你的主应用组件中,使用 Switch 组件来设置路由。将 NotFound 组件作为最后一个 Route,这样它会在没有其他路由匹配时渲染。

jsx 复制代码
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import Home from './Home';
import About from './About';
import NotFound from './NotFound';

const App = () => {
  return (
    <Router>
      <Switch>
        <Route path="/" exact component={Home} />
        <Route path="/about" component={About} />
        {/* 404 路由 */}
        <Route component={NotFound} />
      </Switch>
    </Router>
  );
};

export default App;

3. 注意路由顺序

确保 NotFound 路由放在其他路由之后,因为 Switch 会按照顺序匹配路由。第一个匹配的路由会被渲染,因此 NotFound 需要放在最后。

4. 测试 404 页面

现在,你可以尝试访问一个不存在的路径,例如 /not-existing-path,你应该会看到 404 页面。

总结

通过以上步骤,你可以轻松地处理 React Router 中的 404 错误页面。当用户访问的路径没有相应的组件时,NotFound 组件会被渲染,提供友好的提示。

相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万4 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
李少兄4 天前
JavaScript 隐式全局变量解析
javascript
汉堡大王95274 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大4 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师4 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端