当前位置:首页 > 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 实现页面注册功能 创建注册表单组件 在 Vue 项目中创建一个注册表单组件,通常命名为 Register.vue。该组件包含用户名、邮箱、密码等输入字段,以及提交按钮。 <templa…

vue实现的页面

vue实现的页面

Vue 实现的页面示例 Vue.js 是一个渐进式 JavaScript 框架,用于构建用户界面。以下是一个简单的 Vue 页面实现示例,包含基本的结构和功能。 安装 Vue 通过 CDN 引入…

css如何制作页面模糊

css如何制作页面模糊

使用 backdrop-filter 属性 通过 backdrop-filter 属性可以直接为元素背后的区域添加模糊效果。该属性需要浏览器支持(如 Chrome、Edge、Safari)。示例代码:…

vue实现单页面

vue实现单页面

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

vue实现预约页面

vue实现预约页面

实现预约页面的基本结构 使用Vue CLI或Vite创建一个新项目,安装必要依赖如vue-router和axios。项目结构建议包含components文件夹存放可复用组件,views文件夹存放页面级…

vue如何实现默认页面

vue如何实现默认页面

Vue 实现默认页面的方法 在 Vue 项目中,通常需要设置一个默认页面(如首页或登录页)作为用户访问时的初始页面。可以通过路由配置实现。 配置路由默认跳转 在 Vue Router 中,使用 re…