当前位置: 首页 > news >正文

WHAT - React 技术栈常用库/工具

目录

  • 基础类
  • 状态管理
  • 路由管理
  • UI 组件库
  • 开发工具 / 辅助库
  • 测试相关
  • 表单和数据展示
  • 其它实用类
  • 代码重构
  • 应用迁移:PWA
  • 代码组织与架构建议(选项)

下面是一个 React 技术栈常用库/工具清单,按不同分类整理,涵盖开发、状态管理、路由、组件库、工具库、测试等,适合各种规模的项目。

基础类

类型推荐库 / 工具说明
React 框架react, react-dom核心
脚手架Vite, Create React App, Next.jsVite 更轻量,Next 支持 SSR
打包构建Vite, Webpack, esbuild推荐 Vite

状态管理

类型推荐库特点
全局状态Zustand, Redux Toolkit, Jotai, RecoilZustand 简洁,Redux 强大
表单状态react-hook-form, Formikreact-hook-form 更轻量
本地存储持久化zustand/middleware, redux-persist支持 localStorage 保存状态
异步缓存管理SWR, React Query数据请求 + 缓存 + 状态

路由管理

类型推荐库说明
客户端路由react-router-dom最主流
文件路由Next.js, Remix基于文件系统

UI 组件库

类型推荐库 / UI 框架说明
通用组件库Ant Design, Material UI, Chakra UI, shadcn/ui, Tailwind UI按需选择风格和体积
原子 CSSTailwind CSS灵活,推荐结合组件库使用
动画/过渡framer-motion, react-springframer-motion 简洁强大

开发工具 / 辅助库

类型推荐库 / 工具用途
类型检查TypeScript强烈推荐
类型工具库zod, yup, io-ts表单校验,结合 TS
工具函数lodash, dayjs, date-fns常用
自定义 Hooksusehooks, ahooks常用
HTTP 请求axios, ky, fetchAxios 功能更全面
权限管理casbin, 自定义 Hook控制权限逻辑
图标库react-icons, lucide-react, heroicons图标控件
调试工具React DevTools, why-did-you-render性能调试很有用

测试相关

类型推荐库说明
单元测试Jest, VitestJest 成熟,Vitest 更快(Vite 生态)
组件测试@testing-library/react, Enzyme推荐使用 testing-library
E2E 测试Cypress, Playwright用于端到端自动化测试

表单和数据展示

类型推荐库说明
表单构建react-hook-form, zod, formik表单验证+管理
表格展示antd Table, TanStack Tableantd 提供现成 UI,TanStack 更灵活
图表echarts-for-react, recharts, chart.js数据可视化

其它实用类

类型推荐库说明
国际化react-i18next, formatjs多语言支持
拖拽dnd-kit, react-beautiful-dndUI 拖拽
虚拟滚动/列表react-window, react-virtual适合大数据量
图片处理react-dropzone, react-avatar, cropperjs上传、裁剪等功能
markdown 编辑react-markdown, mdx, @uiw/react-md-editor内容编辑展示
可访问性(a11y)react-aria, reach-ui支持无障碍组件

代码重构

使用 react-codemod 轻松重构 React 代码:Codemods 是以编程方式在代码库上运行的转换,它们使重构代码库变得容易。


应用迁移:PWA

有时候我们需要将已经在浏览器运行的项目提供离线工作、推送通知和设备硬件访问等功能。那就要进行 pwa 迁移。

使用 vite-pwa 将你的应用转变为渐进式 Web 应用程序 (PWA)

代码组织与架构建议(选项)

  • 代码风格:Prettier + ESLint + Husky + lint-staged
  • 状态组织:hooks + Zustand/Redux Toolkit
  • 模块拆分:features/, components/, hooks/, utils/, types/

相关文章:

  • 用AI无差别转换技术协议到生产工艺
  • 硬件知识积累 单片机+ 光耦 + 继电器需要注意的地方
  • [打印机] 惠普打印机的安装和配置
  • 蓝桥杯速成刷题清单(上)
  • grok 驱动级键盘按键记录器分析
  • 扒光HPM6800系列 | 强到起飞的显控MCU介绍
  • 人工智能在高中教育中的应用现状剖析与挑战应对
  • 【QT】QWidget 概述与核心属性(API)
  • FreeRTOS静态任务创建(2025.4.9巨详细)
  • Vue.js组件化开发实战:从工程化到安全纵深设计
  • 华为数字芯片机考2025合集2已校正
  • Transformer Decoder Block的几个优化方案
  • [Windows] Windows更新暂停器 v1.0.0.0
  • Python内存池机制深度解析
  • 接口自动化测试流程、工具及实践
  • 【RabbitMQ】死信队列
  • 红宝书第三十四讲:零基础学会单元测试框架:Jest、Mocha、QUnit
  • 解决 IntelliJ IDEA 中 Maven 项目左侧项目视图未显示顶层目录问题的详细步骤说明
  • [leetcode]查询区间内的所有素数
  • libev实现Io复用及定时器事件服务器
  • 达州做淘宝网站/win10最强优化软件
  • 中山网站建设外包/百度指数查询手机版
  • 应用制作下载/seo关键词排名优化怎样
  • 专业模板网站制作多少钱/专业网络推广公司
  • 广西教育平台网站建设/竞价推广是什么工作
  • 今天河北邢台确诊名单/整站优化系统