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_...

相关推荐
爱喝水的小周几秒前
AJAX vs axios vs fetch
前端·javascript·ajax
Jinxiansen02113 分钟前
unplugin-vue-components 最佳实践手册
前端·javascript·vue.js
几道之旅7 分钟前
介绍electron
前端·javascript·electron
周胡杰9 分钟前
鸿蒙arkts使用关系型数据库,使用DB Browser for SQLite连接和查看数据库数据?使用TaskPool进行频繁数据库操作
前端·数据库·华为·harmonyos·鸿蒙·鸿蒙系统
315356691310 分钟前
ClipReader:一个剪贴板英语单词阅读器
前端·后端
玲小珑12 分钟前
Next.js 教程系列(十一)数据缓存策略与 Next.js 运行时
前端·next.js
qiyue7727 分钟前
AI编程专栏(三)- 实战无手写代码,Monorepo结构框架开发
前端·ai编程
轻语呢喃31 分钟前
React智能前端:从零开始的识图学单词项目(一)
javascript·react.js·aigc
断竿散人32 分钟前
JavaScript 异常捕获完全指南(下):前端框架与生产监控实战
前端·javascript·前端框架
Danny_FD33 分钟前
Vue2 + Vuex 实现页面跳转时的状态监听与处理
前端