当前位置:首页 > React

react如何定义404页面

2026-01-25 19:51:28React

定义404页面的方法

在React中定义404页面通常涉及路由配置,以下是几种常见的方法:

使用React Router v6

在React Router v6中,可以通过<Route>path="*"属性捕获未匹配的路由,并渲染404组件:

import { Routes, Route } from 'react-router-dom';
import NotFound from './NotFound';

function App() {
  return (
    <Routes>
      <Route path="/" element={<Home />} />
      <Route path="/about" element={<About />} />
      <Route path="*" element={<NotFound />} />
    </Routes>
  );
}

使用React Router v5

在v5版本中,可以通过<Switch><Redirect>实现:

import { Switch, Route, Redirect } from 'react-router-dom';
import NotFound from './NotFound';

function App() {
  return (
    <Switch>
      <Route exact path="/" component={Home} />
      <Route path="/about" component={About} />
      <Route component={NotFound} />
      <Redirect to="/404" />
    </Switch>
  );
}

自定义404组件示例

创建一个独立的NotFound组件,用于展示404内容:

const NotFound = () => {
  return (
    <div>
      <h1>404 - Page Not Found</h1>
      <p>The requested URL does not exist.</p>
    </div>
  );
};

服务端渲染(SSR)场景

在Next.js等框架中,可以通过自定义pages/404.js文件自动处理:

export default function Custom404() {
  return <h1>404 - Page Not Found</h1>;
}

注意事项

  • 确保404路由是最后一个匹配项(v6的path="*"或v5的无path属性)。
  • 在开发模式下,React Router可能不会默认显示404页面,需通过导航测试验证。
  • 生产环境中建议结合服务端配置(如Nginx/Apache)返回正确的HTTP状态码。

react如何定义404页面

标签: 定义页面
分享给朋友:

相关文章

vue实现单页面

vue实现单页面

Vue 实现单页面应用(SPA)的方法 Vue.js 是一个渐进式框架,适合构建单页面应用(SPA)。以下是实现 SPA 的核心步骤和关键配置。 安装 Vue 和 Vue Router 确保已安装…

vue实现组织架构页面

vue实现组织架构页面

Vue 实现组织架构页面 数据准备 组织架构通常以树形结构展示,需要准备嵌套的节点数据。例如: data() { return { orgData: { id: 1,…

h5页面实现录音

h5页面实现录音

实现H5页面录音的方法 使用Web Audio API Web Audio API提供音频处理能力,结合getUserMedia可实现录音。核心步骤包括请求麦克风权限、创建音频上下文和处理音频流。…

vue实现页面

vue实现页面

Vue 实现页面的基本方法 安装 Vue.js 依赖 通过 npm 或 yarn 安装 Vue.js: npm install vue # 或 yarn add vue 创建 Vue 实例 在…

vue实现页面签字

vue实现页面签字

实现页面签名的Vue方案 在Vue中实现页面签名功能,可以通过HTML5的Canvas元素结合手势或鼠标事件来捕获用户绘制轨迹。以下是具体实现方法: 安装签名库(可选) 使用现成的Vue签名…

jquery页面加载

jquery页面加载

jQuery 页面加载事件 在 jQuery 中,页面加载事件通常通过 $(document).ready() 或简写的 $() 来实现。这种方式确保代码在 DOM 完全加载后执行,但无需等待图片等资…