中级第 14 / 17 节35 分钟 · 实操
性能与记忆化 (Memoization)
React 课程的一部分
你的应用里有一张两千行的表格,上面还有一个搜索框。每敲一个键都很沉重:你打字,半秒钟之后字母才出现在屏幕上。没有任何东西坏掉,代码看上去也很合理。真正发生的事情是,搜索框里的一个字符让 React 把那两千个行组件全部重新执行一遍,算出其中几乎没有一个发生了变化,然后再去更新屏幕。
React 频繁重新渲染是有意为之,而且大多数时候这样做完全正确,因为执行一次组件函数很便宜,React 也很擅长算出页面上最少需要改动的部分。偶尔它并不正确,为了这些场景,React 给了你三个工具,用来说一句“这个结果没变,直接复用上一次的”。它们的总称是记忆化 (memoization):把一次计算的答案记下来,这样输入相同的时候就可以不必重算。
想在真实环境里学习 React 性能与记忆化 (Memoization) 吗?
点击下方,立即获得一台预装 React 的 Linux 主机,跟懂你代码的 AI 导师一起完成 性能与记忆化 (Memoization) 的实操练习。
开始这节课性能与记忆化 (Memoization)你将学到什么
- React.memo for components
- UseMemo for expensive computations
- UseCallback for stable function references
- When memoization is overkill
- Measuring before optimizing
