📌 基础概念

React Hooks 是 React 16.8 引入的函数式组件特性,允许在不编写类组件的情况下使用状态和生命周期。核心钩子包括:

  • useState 🔄:管理组件状态
  • useEffect 📦:处理副作用逻辑
  • useContext 🧠:访问上下文数据

⚠️ 注意:函数式组件的生命周期与类组件略有不同,Hooks 通过函数调用顺序保证执行一致性

📅 生命周期阶段

  1. 挂载阶段 📌

    • useEffect 会执行(首次渲染时)
    • 通过 useRef 可获取初始 DOM 元素
    • 示例:页面加载时初始化数据
  2. 更新阶段 🔄

    • useEffect 会重复执行(依赖项变化时)
    • useLayoutEffect 用于布局相关的副作用
    • 示例:表单输入时实时验证
  3. 卸载阶段 🧹

    • useEffect 返回的函数会执行(组件移除时)
    • 示例:清除定时器或事件监听

🧠 高级用法

  • 依赖项优化 📌
    使用数组控制 useEffect 执行频率
    示例:useEffect(() => { ... }, [props.id])

  • 自定义 Hook 🔄
    将复用逻辑封装为可组合的函数
    示例:创建 useFetch 封装数据请求

  • 并发模式 📦
    React 18 引入的并发特性影响 Hook 执行时机
    了解更多 React 并发模式

📚 扩展阅读

想要深入理解 Hook 的底层原理?
点击进入 React Hooks 源码解析

react_hooks
useEffect
lifecycle_methods