当前位置:首页 > React

如何写react项目多个页面

2026-01-26 00:28:12React

创建多页面React项目的方法

使用React Router管理多页面是常见方案。React Router是React官方推荐的库,用于处理单页应用(SPA)中的路由和页面导航。

安装React Router

通过npm或yarn安装react-router-dom:

npm install react-router-dom
# 或
yarn add react-router-dom

配置基本路由结构

在项目入口文件(如App.js)中设置路由:

import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import Home from './pages/Home';
import About from './pages/About';
import Contact from './pages/Contact';

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

创建页面组件

在src目录下创建pages文件夹,存放各个页面组件:

如何写react项目多个页面

// pages/Home.js
function Home() {
  return <h1>Home Page</h1>;
}

// pages/About.js
function About() {
  return <h1>About Page</h1>;
}

// pages/Contact.js
function Contact() {
  return <h1>Contact Page</h1>;
}

添加导航链接

在需要导航的地方使用Link组件:

import { Link } from 'react-router-dom';

function Navigation() {
  return (
    <nav>
      <Link to="/">Home</Link>
      <Link to="/about">About</Link>
      <Link to="/contact">Contact</Link>
    </nav>
  );
}

处理动态路由

对于需要参数的页面,使用动态路由:

<Route path="/users/:id" element={<UserProfile />} />

在UserProfile组件中获取参数:

如何写react项目多个页面

import { useParams } from 'react-router-dom';

function UserProfile() {
  const { id } = useParams();
  return <h1>User ID: {id}</h1>;
}

配置404页面

添加通配符路由处理未匹配路径:

<Route path="*" element={<NotFound />} />

使用嵌套路由

对于有共享布局的页面组,使用嵌套路由:

<Route path="/dashboard" element={<DashboardLayout />}>
  <Route index element={<DashboardHome />} />
  <Route path="settings" element={<DashboardSettings />} />
</Route>

代码分割优化

使用React.lazy和Suspense实现按需加载:

import { lazy, Suspense } from 'react';

const About = lazy(() => import('./pages/About'));

function App() {
  return (
    <Suspense fallback={<div>Loading...</div>}>
      <Routes>
        <Route path="/about" element={<About />} />
      </Routes>
    </Suspense>
  );
}

标签: 多个如何写
分享给朋友:

相关文章

vue实现多个图表展示

vue实现多个图表展示

使用 Vue 实现多个图表展示 安装图表库 推荐使用 ECharts 或 Chart.js,两者均支持 Vue 集成。以 ECharts 为例,安装依赖: npm install echarts…

vue实现多个圆环

vue实现多个圆环

Vue 实现多个圆环的方法 使用 SVG 绘制圆环 SVG 是绘制圆环的理想选择,可以通过 circle 和 path 元素实现圆环效果。以下是一个简单的 Vue 组件示例: <templa…

vue 实现多个倒计

vue 实现多个倒计

Vue 实现多个倒计时的方法 在 Vue 中实现多个倒计时可以通过以下方式完成: 使用 setInterval 和 clearInterval 通过 Vue 的 data 或 ref(Composi…

vue实现多个预览图

vue实现多个预览图

Vue 实现多个预览图的方法 使用 v-for 循环渲染图片列表 通过 v-for 指令遍历图片数组,动态生成多个预览图。适用于需要展示固定或动态图片列表的场景。 <template>…

Vue实现多个echarts排版

Vue实现多个echarts排版

实现多个 ECharts 实例的排版布局 在 Vue 中实现多个 ECharts 实例的排版布局,可以通过 CSS 布局结合 ECharts 的响应式设计来完成。以下是几种常见方法: 使用 Fle…

vue多个权限按钮实现

vue多个权限按钮实现

权限按钮的实现方式 在Vue中实现多个权限按钮的控制,可以通过以下几种方式: 基于v-if或v-show的权限控制 通过判断用户权限决定按钮的显示或隐藏。例如: <template>…