知
React按模块推进的系统课330 分钟18 节5 个模块

React 从 0 到 1

沿 UI = f(state) 展开:从脚手架、组件组合、JSX 与快照,到 Hooks、请求缓存、状态管理、路由、错误边界与 Suspense,再到 Fiber、并发、测试与 SSR。每节包含机制、代码与自测。

读完之后你能

  • 独立搭出带路由、请求缓存与测试的应用
  • 用 UI = f(state) 解释渲染、快照与闭包
  • 判断重渲染来源并选择优化手段
  • 说清 Hooks、Fiber 与 Server Component 的边界
  • 用 AI 产出候选实现,并用四个检查面完成评审

适合谁

  • 会 JavaScript、想系统学 React 的前端
  • 准备 React 面试、需要补并发与工程链路的开发者

读前准备

  • JavaScript 基础:作用域、闭包、Promise、模块
  • HTML 与 CSS 基础,会用 npm 与命令行
已读 0 / 180%

目录

建议按顺序阅读,每节末尾可跳转到对应题目自测

模块一 · 起步与渲染

0 / 5
  1. 01

    起步:用 Vite 跑通第一个 React 应用

    从装环境到跑起第一个组件,讲清 Vite 与 Next.js 的选择、入口文件做了什么、四个脚本的差异,以及 Fast Refresh 与 StrictMode 的实际影响。

    18 分钟
  2. 02

    组件与组合:props、children 与拆分边界

    组件是 React 的最小复用单位。这一节讲清 props 的约束、children 与具名插槽的用法、组合优于继承的落地方式,以及组件拆分与重挂载的边界。

    19 分钟
  3. 03

    React 的心智模型:UI = f(state)

    把 React 放回它解决的问题里:视图是状态的函数。这一节讲清声明式的三个推论、一次渲染的输入输出,以及状态与视图不同步的三种原因。

    17 分钟
  4. 04

    JSX、状态与事件:先把交互跑通

    JSX 只是语法糖,状态是快照,事件是闭包。这一节把这三件事拆开讲,并给出受控组件、列表 key 与批处理的正确用法。

    17 分钟
  5. 05

    一次渲染到底发生了什么:render 与 commit

    setState 之后并不是立刻改 DOM。这一节拆开 render 与 commit 两个阶段,解释双缓冲、StrictMode 双调用与副作用时机。

    17 分钟

模块二 · Hooks 与数据

0 / 5
  1. 06

    Hooks 为什么必须按顺序调用

    Hooks 不是魔法,而是挂在 Fiber 上的链表。这一节讲清调用规则、依赖比较、闭包陷阱,以及自定义 Hook 的边界。

    17 分钟
  2. 07

    副作用与数据:从 useEffect 到请求缓存

    useEffect 的定位是"同步外部系统",不是"生命周期钩子"。这一节讲清依赖与清理、请求竞态、缓存去重,以及什么时候该用数据请求库。

    18 分钟
  3. 08

    请求与缓存:把服务端状态交给 TanStack Query

    服务端状态和客户端状态不是一类东西。这一节讲清 queryKey、staleTime 与失效机制,用乐观更新和分页把列表页面写对,并说明什么时候不该引入请求库。

    19 分钟
  4. 09

    错误边界、lazy 与 Suspense:让失败可控

    渲染错误和接口错误不是一类问题。这一节讲清错误边界能捕获什么、代码分割的加载态怎么不闪烁,以及 Suspense 的边界该放在哪一层。

    19 分钟
  5. 10

    状态管理:useReducer、Context 与外部 store 的分工

    状态管理不是"选一个库",而是把状态放到正确的层级。这一节讲清局部状态、Context 与 Zustand/Redux Toolkit 的边界,以及选择器如何避免全量重渲染。

    20 分钟

模块三 · 路由、测试与服务端

0 / 3
  1. 11

    路由:嵌套、鉴权与按页懒加载

    路由是应用的骨架。这一节讲清路由表配置、嵌套布局与 Outlet、两种鉴权写法、懒加载与 errorElement,以及 URL 该怎么设计。

    19 分钟
  2. 12

    测试:Vitest、RTL 与 Playwright 的分工

    测试的价值不在覆盖率,而在"改错时能不能拦住"。这一节讲清 RTL 的查询哲学、Hook 测试与 Mock 边界,以及让 E2E 不摇的四个前提。

    19 分钟
  3. 13

    SSR、Next.js 与 React 19:服务端与客户端的分界线

    首屏快不快,取决于哪些工作放在了服务端。这一节讲清 CSR/SSR/SSG/ISR 的成本、水合失败的根因、Server 与 Client Component 的边界,以及 React 19 的 Actions。

    20 分钟

模块四 · 性能、调度与架构

0 / 3
  1. 14

    重渲染控制:先问为什么渲染,再问怎么阻止

    大部分"性能问题"其实是结构问题。这一节按"状态下放 → 结构拆分 → memo → 虚拟列表"的顺序给出优化手段与判断标准。

    18 分钟
  2. 15

    Fiber 与并发:让出主线程的权利

    Fiber 把渲染拆成可中断的工作单元,Lane 决定谁先执行。这一节讲清 Fiber 结构、双缓冲、优先级,以及 transition 与 Suspense 的适用边界。

    18 分钟
  3. 16

    架构与组件模式:从单页到可协作的工程

    架构解决的是"改动的影响范围"。这一节讲清目录分层、四种组件模式、Monorepo 与微前端的适用边界,并给出一套可落地的约束清单。

    19 分钟

模块五 · AI 协作与表达

0 / 2
  1. 17

    AI 协作与代码评审:把生成变成产出

    生成成本掉到接近零,审查、验证与责任一分没少。这一节给出上下文四件套、任务拆解粒度、读 diff 的四个检查面,以及一份能算清"到底省了多少"的账。

    19 分钟
  2. 18

    面试表达:把 React 讲成工程判断

    面试不是背 API,而是展示判断。这一节给出"结论—机制—取舍—验证"的表达骨架、五个高频题的答法,以及项目案例与追问应对。

    17 分钟