React入门-使用 Vite 搭建基于 React 和 TypeScript 的后台管理应用(一)

使用 Vite 搭建基于 React 和 TypeScript 的后台管理应用(一)

一、项目概述

本文介绍了如何使用 Vite 快速搭建一个基于 React 和 TypeScript 的后台管理应用,涵盖从环境搭建到基础功能实现的全过程。

二、技术选型

  1. React 18 :作为核心前端库,提供高效的组件化开发体验,利用其最新的特性提升应用性能和开发效率。
  2. React-Router 7 :用于实现应用内的路由管理,支持复杂单页面应用的页面切换和导航功能。
  3. Ant Design 5 :作为 UI 组件库,提供丰富、美观且易于使用的界面组件,加快界面开发速度。

三、目标功能实现

  1. 工程创建与基础配置 :使用 Vite 快速创建 React + TypeScript 项目,通过修改 package.json 文件指定 React 和 React-Dom 版本为 18.0.0,确保项目基于最新稳定版本运行。

  2. 路由与菜单管理 :安装 React-Router-Dom 实现路由功能,将菜单和路由数据提取到单独文件中集中管理,便于后期维护和扩展。

    • 菜单数据 :定义包含图标、标签、路径等信息的菜单项数组,使用 Ant Design 图标库增强视觉效果。
    • 路由数据 :配置与菜单对应的路由对象数组,明确各路由路径与组件的映射关系。
  3. 页面布局与组件开发 :应用布局分为 Header、Sidebar 和 Content 三部分,初始化 Home、About、Dashboard 和 User 四个简单组件,实现基本页面展示功能。同时,实现菜单可收缩功能,收缩后仅展示图标,优化界面空间利用。

四、项目搭建过程

  1. 创建工程 :通过命令 npm create vite react-admin-vite -- --template react-ts 快速初始化项目,利用 Vite 的 React + TypeScript 模板奠定开发基础。
  2. 版本调整与依赖安装 :修改 package.json 中 React 相关版本号后,执行 npm install 安装依赖。随后安装 React-Router-Dom 和 Ant Design,完善项目功能所需的库支持。
  3. 数据管理与框架搭建 :创建菜单和路由数据文件,定义清晰的数据结构,实现应用基本导航和页面展示框架。
菜单数据 复制代码
import {
  HomeOutlined,
  InfoCircleOutlined,
  DashboardOutlined,
  UserOutlined,
} from '@ant-design/icons'

const menuItems = [
  { key: '1', label: 'Home', path: '/', icon: HomeOutlined },
  { key: '2', label: 'About', path: '/about', icon: InfoCircleOutlined },
  { key: '3', label: 'Dashboard', path: '/dashboard', icon: DashboardOutlined },
  { key: '4', label: 'User', path: '/user', icon: UserOutlined },
]

export default menuItems
路由数据 复制代码
import React from 'react'
import { RouteObject } from 'react-router-dom'
import Home from './components/Home.tsx'
import About from './components/About.tsx'
import Dashboard from './components/Dashboard'
import User from './components/User'

const routes: RouteObject[] = [
  {
    path: '/',
    element: <Home />,
  },
  {
    path: '/about',
    element: <About />,
  },
  {
    path: '/dashboard',
    element: <Dashboard />,
  },
  {
    path: '/user',
    element: <User />,
  },
]

效果展示:

五、项目总结

  1. 效率提升 :借助 AI 工具,快速解决菜单、路由数据提取及简单组件生成等问题,大幅降低学习成本,提高开发效率。
  2. 问题解决 :在布局全屏展示问题上,通过分析发现并手动删除 React-Ts 模板自带的干扰 CSS 样式,成功解决问题,积累实际开发经验。

六、代码资源

项目完整代码托管于 Gitee,地址为:gitee.com/animal-fox_...

相关推荐
刺客-Andy5 分钟前
React 第五十一节 Router中useOutletContext的使用详解及注意事项
前端·javascript·react.js
NoneCoder9 分钟前
React进阶:状态管理选择题
前端·react.js·面试
巴巴_羊9 分钟前
react 生命周期
前端·react.js·前端框架
刺客-Andy10 分钟前
React 第五十二节 Router中 useResolvedPath使用详解和注意事项示例
前端·javascript·react.js
datascome12 分钟前
简数采集技巧之快速获取特殊链接网址URL方法
前端·经验分享·爬虫·程序人生·正则表达式
架构个驾驾15 分钟前
Vue2 与 Vuex 状态管理实战指南
前端·javascript·vue.js
贵州数擎科技有限公司17 分钟前
Unity 单例模式完全指南
前端
FogLetter17 分钟前
从语义化标签到JS变量:前端工程师的必修课
前端·javascript·代码规范
幸福摩天轮17 分钟前
vue2和vue3什么区别
前端
五号厂房18 分钟前
浅谈useMemo与useCallback的区别与联系
前端