你可能会说
函数组件里怎么用状态和生命周期?以前只有 class 组件才行吧?
Hooks 是 React 让函数组件拥有状态、副作用等能力的 API——useState、useEffect 等。
React 中让函数组件拥有「记忆」和「副作用」能力的函数。useState 记住数据,useEffect 执行副作用。
生活类比
像给机器人加装模块——原本只会显示,加了 useState 模块就能记住东西,加了 useEffect 就能定时做事。
🎮 动手试试
👇 挂载/卸载组件观察 Hook 生命周期
关于「Hooks」,以下哪个描述最准确?
你可以这样告诉 AI
帮我用 Hooks 实现:useState 管理搜索词,useEffect 防抖 300ms 后请求 API,useMemo 缓存过滤结果。
Hooks 用 useEffect 统一处理挂载/更新/卸载,比分散的生命周期方法更清晰。
Hooks 必须在组件内调用(有渲染上下文),普通工具函数在哪都能调。
函数组件加能力
用 useState 管理状态,useEffect 处理副作用(请求数据、订阅事件),让函数组件拥有 class 组件的全部能力。
和 AI 协作时
想让 AI 用 Hooks 时,直接说「用 useState 存搜索词,useEffect 防抖 300ms 请求 API,useMemo 缓存结果」。
Vue/Svelte 项目
Hooks 是 React 专属概念,Vue 用 Composition API、Svelte 用 runes,各有各的状态管理方式。
与 React 无关的项目
不涉及 React 的项目不需要理解 Hooks。
React 中让函数组件拥有「记忆」和「副作用」能力的函数。useState 记住数据,useEff
像给机器人加装模块——原本只会显示,加了 useState 模块就能记住东西,加了 useEffec
AI 代码里的 `const [count, setCount] = useState(0)` 就是