前言

  • Vue 官网这样说:渐进式 JavaScript 框架。易学易用,性能出色,适用场景丰富的 Web 前端框架
  • React 官网这样说:React 用于构建 Web 和原生交互界面的库

由此可见:

  • React 更像是一个 UI 渲染框架(UI = f(data)——数据驱动视图),React 需要依赖强大的第三方库,这使得 React 更加灵活,但也更加混乱。
  • Vue 更像一个系统框架,因为 Vue 内置了UI + 反应式 + 数据流 + 模板引擎的一体化的官方解决方案,这使得 Vue 的更加规范且清晰,而 React 没有。

React 官网
React 中文文档

首先看下 React 和 Vue 的设计理念对比(孰优孰劣不可妄加评论,仅抱着学习 React 的平常心态就好,顺便了解下这两个框架各自的特点):

设计理念ReactVue
响应式系统❌ 无✔ 有(内置依赖追踪)
Granularity(粒度)粗粒度:组件级更新
useState = re-render 整个组件)
细粒度:属性级更新
reactive = 更新到具体使用位置)
全局状态管理❌ 无(靠生态)✔ 有 Pinia(官方)
SSR + 数据管理❌ 无(要求 Next.js)✔ 有 Nuxt.js(官方)
前端构建工具❌ 无(靠生态)✔ 有 Vite(官方)
模板引擎❌ 无(需要 JSX/TSX)✔ 有(内置模板语法)
否统一就是体系❌ 依赖大量外部生态✔ 官方统一方案

所以 Vue 更像是:“React 内置版的 Zustand + Jotai + Signals”。而 React 需要自己搭建,自己选择合适的框架。虽然 React 更灵活,但它没有一整套全流程的官方方案,过度依赖第三方框架会更加混乱,这就要求开发者的架构能力要高,门槛自然就更高了。

一个生态体系,由理念、工具、社区、标准共同驱动的“现代前端操作系统”。就是有人说,react 不是一个前端框架,而

有人说,react 不是一个框架,更像是一套思维模型。react 是一个由组件化、状态驱动、单向数据流、不可变性组成的世界观。

关于 React,现在最流行的 “黄金组合”:
Function Component(Hooks)+ 自定义 hooks + 组件组合模式(Composition)”,再加上一些来自第三方的现代技术栈:

  • 状态管理:Zustand / Jotai / Redux Toolkit
  • UI 库:MUI / AntD / Chakra / shadcn/ui
  • 数据请求:React Query
  • 路由:React Router v6
  • 前端构建工具:Vite + RollupWebpack 已退位
  • SSR/SSG:Next.js + RSC
  • 性能:useMemo、useCallback、useTransition、Suspense

一、创建一个 react 项目

如何创建一个 react 方案

二、react DOM

react 与 DOM

三、react 建议运用 JSX 模板语法

JSX | TSX 教程

四、react 组件

react 组件详解
React Hooks 函数式组件

五、react 的状态管理

包括 useState、useReducer、Context、Zustand、Jotai、Redux Toolkit、React Query、React 19 + RSC 等。

react 的状态管理
RTK(Redux Toolkit) 学习
TanStack Query 的 React Query 学习

六、react 的性能优化

react lazy + Suspense / loadable 实现路由懒加载
react 之 shouldComponentUpdate / PureComponent / memo 减少组件的渲染次数
react 如何做深度监听?
react 跨域—— jsonp 跨域