💡
原文中文,约2300字,阅读约需6分钟。
📝
内容提要
介绍React中的useRef() hook,可存储任何类型数据,不会引起组件重新渲染,源码实现简单。
🎯
关键要点
- useRef() 是一个 hook,可以存储任何类型的数据。
- useRef() 不会引起组件重新渲染,存储的数据在组件生命周期内有效。
- useRef() 的内容修改立即生效,读写操作在 current 属性上进行。
- useRef() 与 useState() 和全局变量的区别在于数据的生命周期和是否引起组件重新渲染。
- useRef() 的源码实现简单,主要分为初始创建和更新两个阶段。
- 在初始创建阶段,useRef() 将数据存储在 hook 节点的 memoizedState 中。
- 在更新阶段,useRef() 直接返回 hook 节点上 memoizedState 属性的内容。
➡️