📌 基础概念
React Hooks 是 React 16.8 引入的函数式组件特性,允许在不编写类组件的情况下使用状态和生命周期。核心钩子包括:
useState
🔄:管理组件状态useEffect
📦:处理副作用逻辑useContext
🧠:访问上下文数据
⚠️ 注意:函数式组件的生命周期与类组件略有不同,Hooks 通过函数调用顺序保证执行一致性
📅 生命周期阶段
挂载阶段 📌
useEffect
会执行(首次渲染时)- 通过
useRef
可获取初始 DOM 元素 - 示例:页面加载时初始化数据
更新阶段 🔄
useEffect
会重复执行(依赖项变化时)useLayoutEffect
用于布局相关的副作用- 示例:表单输入时实时验证
卸载阶段 🧹
useEffect
返回的函数会执行(组件移除时)- 示例:清除定时器或事件监听
🧠 高级用法
依赖项优化 📌
使用数组控制useEffect
执行频率
示例:useEffect(() => { ... }, [props.id])
自定义 Hook 🔄
将复用逻辑封装为可组合的函数
示例:创建useFetch
封装数据请求并发模式 📦
React 18 引入的并发特性影响 Hook 执行时机
了解更多 React 并发模式
📚 扩展阅读
想要深入理解 Hook 的底层原理?
点击进入 React Hooks 源码解析