这门课解决什么问题
如果你已经用 React 写过一些组件,但主要停留在类组件或“照着文档抄 useState”的阶段,遇到状态联动、定时器清理、复杂计算重复执行、子组件无谓重渲染这类问题时会卡壳,那这门课就是针对这些具体场景的。它不教 React 基础语法,也不讲 JSX 怎么用,而是集中攻克函数组件里最核心的 Hooks 机制——从 useState、useEffect、useRef 这三个最常用的 Hook 入手,再深入到 Capture Value 特性、memo/useMemo/useCallback 的性能优化手段,最后讲清 Hooks 的使用规则和底层原理。
课程内容全部围绕“函数式编程”这一主线展开,目标很明确:让你从“会用 Hooks 写页面”升级到“理解 Hooks 为什么这样设计、什么时候该用哪个、怎么避免踩坑”。比如 useEffect 的清除机制,很多人只知道在 return 里写清理函数,但不知道什么场景必须清理、清理时机是什么,这门课用两节专门讲透;Capture Value 特性更是面试高频题,搞懂它你才能理解为什么闭包里拿到的是旧值。
适合什么基础的人
适合已经能独立用 React 写简单页面、但没系统学过 Hooks 的开发者。你需要先掌握:函数组件的基本写法、JSX 语法、props 和 state 的概念、事件处理。如果你连这些都不熟,建议先补基础再来看,否则会跟不上节奏。课程里不会重复解释“什么是组件”“什么是状态”这类入门概念,而是直接进入 Hooks 的进阶用法。
如果你已经用过 Hooks 但总感觉“会用但说不清原理”,或者遇到性能问题不知道从哪下手,这门课同样适合你——它把每个 Hook 的设计意图和适用边界都讲得很细,能帮你补齐认知盲区。
建议先看哪几块
如果你是第一次系统学 Hooks,建议按课程顺序来,但可以分三个阶段消化:
- 第一阶段(第 1~3 节):先把 useState、useEffect、useRef 三个基础 Hook 吃透。尤其是 useEffect 的清除机制,这两节是重中之重,建议边看边写代码验证清理函数的触发时机。
- 第二阶段(第 4 节):Capture Value 特性。这块比较抽象,建议配合课程里的例子,自己手动在控制台打印验证闭包捕获的值,理解“每次渲染都是独立快照”这个概念。
- 第三阶段(第 5~6 节):性能优化部分。memo、useMemo、useCallback 三件套容易混淆,建议对比着学,重点搞清三者各自解决什么问题、什么时候该用哪个,最后再看 Hooks 规则收尾。
学完能独立做什么
学完之后,你可以独立完成以下工作:
- 用函数组件 + Hooks 重构现有的类组件代码,且能处理定时器、事件监听、订阅等副作用的正确清理,不会出现内存泄漏。
- 在写复杂页面时,能判断哪些状态应该用 useState 管理、哪些用 useRef 保存(比如不需要触发渲染的变量),避免不必要的重渲染。
- 能定位并解决组件重复渲染的性能问题——知道什么时候用 memo 包裹子组件、什么时候用 useMemo 缓存计算结果、什么时候用 useCallback 稳定函数引用。
- 能解释 Hooks 为什么不能写在条件语句里,理解 React 内部如何按顺序关联 Hook 状态,这对应聘 React 岗位的面试也很有帮助。
资料怎么配合练习
这套课程是视频形式,每节都有对应的代码演示。建议的学习方法是:看一节视频后,立刻打开编辑器把课上的例子自己敲一遍,不要直接复制。重点练习三类场景:
- 写一个带定时器的组件(比如倒计时),用 useEffect 实现清除,观察组件卸载时定时器是否被正确清理。
- 写一个父组件传函数给子组件的例子,分别用 useCallback 和不用的版本,配合 React DevTools 的 Profiler 观察子组件重渲染次数。
- 写一个有复杂计算的组件(比如大数组过滤),分别用 useMemo 和不用的版本,感受性能差异。
学完每一节后,试着不看视频,自己默写一遍该 Hook 的核心用法,再对照视频查漏补缺。最后把第 5 节的性能优化部分单独拎出来,做一个综合练习:一个包含列表、筛选、计数三个功能的页面,用上 memo、useMemo、useCallback,并验证每个优化是否真的减少了渲染次数。这样才算真正把课程内容内化。
课程目录
课程目录13 集
- 1-1 [使用 State Hook] useState的使用 (28:53).mp4
- 1-2 [使用 State Hook] useState的使用(续) (32:04).mp4
- 2-1 [使用 Effect Hook] useEffect基本语法 (22:13).mp4
- 2-2 [使用 Effect Hook] useEffect的副作用清除机制 (19:06).mp4
- 2-3 [使用 Effect Hook] 使用useEffect实现副作用的清除 (15:04).mp4
- 2-4 [使用 Effect Hook] 使用useEffect实现副作用的清除(续) (14:56).mp4
- 3-1 [使用 Ref Hook] useRef的使用 (19:33).mp4
- 4-1 [Capture Value 特性] Capture Value特性 (28:19).mp4
- 4-2 [Capture Value 特性] Capture Value特性(续) (12:35).mp4
- 5-1 [函数组件的性能优化] memo高阶函数的使用 (26:38).mp4
- 5-2 [函数组件的性能优化] useMemo的使用 (39:03).mp4
- 5-3 [函数组件的性能优化] useCallback的使用 (20:48).mp4
- 6-1 [Hook 规则] Hooks使用规则与原理 (22:31).mp4






