前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
首页程序员面试题库Hooks 与复用专题面试题
面试知识索引 · 分类、标签与搜索

Hooks 与复用专题面试题,37 道完整答案

Hooks 与复用专题面试题第 1 页,显示第 1–37 题,共找到 37 道完整解析,可继续按分类、标签与关键词缩小范围。

37筛选结果
52技术分类
178检索标签
1索引分页
按分类建立知识面,再用标签和搜索定位问题

每页只渲染 50 道题。分类与标签分页可抓取,自由搜索结果不会制造无限 SEO 页面。

快速定位

分类、标签与关键词搜索

清除全部筛选
题库检索
技术分类52 个
全部分类5000AI Agent511浏览器301JavaScript285React281AI 开发262CSS240Node.js217TypeScript206Vue180前端工程化138React Native135
查看全部 52 个分类
操作系统135数据库134Docker95计算机网络94API 设计90Kubernetes90HTML89Redis89全栈开发88分布式系统88系统设计86HTTP85Next.js60Angular58Linux53Nuxt51PostgreSQL46可观测性46设计模式46小程序45身份与权限45无障碍44MongoDB43PWA43Web 安全43Git42前端测试42前端性能41WebAssembly40测试40AI 工程37SvelteKit37Go35前端数据管理30React Router29AI 全栈28Svelte27算法12Java10数据结构5前端手写题3
热门标签178 个
全部标签Hooks 与复用37并发编程448缓存355性能优化340安全336异步编程292类型系统215构建工具211容器化184流处理177表单157SQL148HTTP141路由140离线应用121
查看其余 163 个标签
网络协议111测试109数据库事务95实时通信92Web 可访问性90动画79可观测性77Agent 记忆75向量检索66工具调用66LangGraph59Prompt56任务规划53排障与运维53数据库索引52浏览器自动化51Flexbox50值与类型50GraphQL49事务与并发49构建与镜像49DNS 与 TLS48工程协作与交付48AI 评测47CSS Grid47Express 服务47MCP47副作用与同步47向量与嵌入47文件与多媒体47流与二进制47传输与协议46列表与性能46可维护代码46响应式原理46容器运行46指标日志追踪46数据建模与运维46文件与 I/O46表单与输入46MCP 协议45RAG45Vite 与模块构建45Webpack45内存与虚拟化45原生集成45多 Agent45工作负载与发布45应用与性能45数据处理45模块与工具链45组件与模板45缓存与数据结构45网络与运维45评估与调试45身份认证与授权45运行时与开发45Web 系统方案44一致性与容错44侦听与生命周期44分布式使用44原生组件与交互44可访问交互44消息与异步处理44渲染与调度44索引与执行计划44组件设计44缓存与代理44进程与并发44层叠与选择器43攻击面与防御43文档数据库43权限与安全43离线与渐进增强43语义与文档43请求与通信 API43Worker 与线程协作42事件系统42存储与离线数据42服务架构42服务端与流式渲染42服务端工程42泛型设计42版本控制42类型收窄42类型运算42组件与端到端42编码与执行42进程与线程42DOM 与文档操作41Flex 布局41HTTP 语义41NestJS 架构41REST 与接口契约41SQL 查询41加载与交互性能41动画与视觉41类型工程41记忆与状态41运行时与调度41Agent 架构40WebAssembly 集成40单元与集成测试40多 Agent 协作40工作流编排40模块与语言机制40浏览器与 UI 自动化40生产运行40函数与作用域39响应式设计39性能与并发39类型系统基础39Grid 布局38数组与集合38盒模型与排版38应用开发37推理与成本37状态共享37知识库数据37模型与应用评测36对象与原型35状态与渲染35语言与并发35异步与 Promise34Effect32RAG 检索31React 性能31响应式与性能31微调与数据31TanStack Query30全栈边界30数据与缓存30大模型基础29路由与数据流29事件循环28流式交互28提示与上下文设计27数据与服务端27组件与依赖注入27组件与响应式27多模态应用24应用与渲染24Hydration22沙箱安全22状态管理18算法18CI/CD13语言与运行时10React Server Components6搜索与排序4实用函数实现3链表栈队列3图算法2字符串算法2树与遍历2索引与高级结构2Kubernetes1作用域与函数1动态规划1异步与浏览器1手写与交互性能1数组与双指针1相等比较1
当前页01 / 1

正在显示第 1–37 题

React37
第 1 页

本页面试问题

按稳定语义路径排序

  1. 0001
    ReactHooks 与复用

    React 回调 ref 适合什么场景,条件 DOM 出现后为什么不一定需要 Effect?

    用条件输入框解释回调 ref 如何跟随节点连接与移除,比较对象 ref 与挂载 Effect,说明回调身份、动态节点和清理边界。

    核心关键词React callback ref 条件 DOM 挂载处理
    #Hooks 与复用
  2. 0002
    ReactHooks 与复用

    用 useReducer 加 Context 复用状态逻辑时,为什么常把 state 和 dispatch 拆成两个 Context?

    用 useReducer 加 Context 复用状态逻辑时,为什么常把 state 和 dispatch 拆成两个 Context? 本文先给出可直接复述的结论,再用最小代码说明React Context 拆分 state dispatch 性能 复用的工作方式、判断依据、项目边界和常见误区。

    核心关键词React Context 拆分 state dispatch 性能 复用
    #Hooks 与复用#性能优化
  3. 0003
    ReactHooks 与复用

    自定义 Hook 内部注册的事件监听或定时器,清理责任应该由谁承担?

    自定义 Hook 内部注册的事件监听或定时器,清理责任应该由谁承担? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 清理函数 责任的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 清理函数 责任
    #Hooks 与复用
  4. 0004
    ReactHooks 与复用

    把 useEffect 逻辑抽进自定义 Hook 后,Hook 参数变化时如何保证 effect 正确重新执行?

    把 useEffect 逻辑抽进自定义 Hook 后,Hook 参数变化时如何保证 effect 正确重新执行? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 依赖穿透 effect 参数的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 依赖穿透 effect 参数
    #Hooks 与复用#Effect
  5. 0005
    ReactHooks 与复用

    为什么 React 自定义 Hook 的函数名必须以 use 开头?

    为什么 React 自定义 Hook 的函数名必须以 use 开头? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 命名 use 开头 原因的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 命名 use 开头 原因
    #Hooks 与复用
  6. 0006
    ReactHooks 与复用

    设计自定义 Hook 的返回值时,应该返回数组元组还是对象?

    设计自定义 Hook 的返回值时,应该返回数组元组还是对象? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 返回值 数组 对象的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 返回值 数组 对象
    #Hooks 与复用
  7. 0007
    ReactHooks 与复用

    自定义 Hook 返回的回调函数在每次渲染都变新引用,导致调用方 effect 反复执行,该如何处理?

    自定义 Hook 返回的回调函数在每次渲染都变新引用,导致调用方 effect 反复执行,该如何处理? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook useCallback 返回函数 稳定引用的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook useCallback 返回函数 稳定引用
    #Hooks 与复用#React 性能
  8. 0008
    ReactHooks 与复用

    两个组件同时调用同一个自定义 Hook,它们内部的状态会互相共享吗?

    两个组件同时调用同一个自定义 Hook,它们内部的状态会互相共享吗? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 状态共享 独立的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 状态共享 独立
    #Hooks 与复用
  9. 0009
    ReactHooks 与复用

    复用一段包含状态与副作用的逻辑时,应该抽成自定义 Hook 还是抽成组件?

    复用一段包含状态与副作用的逻辑时,应该抽成自定义 Hook 还是抽成组件? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 组件 复用 取舍的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 组件 复用 取舍
    #Hooks 与复用
  10. 0010
    ReactHooks 与复用

    React 的自定义 Hook 与普通的 JavaScript 工具函数有什么本质区别?

    React 的自定义 Hook 与普通的 JavaScript 工具函数有什么本质区别? 本文先给出可直接复述的结论,再用最小代码说明React 自定义 Hook 工具函数 区别的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 自定义 Hook 工具函数 区别
    #Hooks 与复用
  11. 0011
    ReactHooks 与复用

    只想响应某个交互而不因读取最新 state 让整个 useEffect 反复重跑,React 提供了什么思路?

    只想响应某个交互而不因读取最新 state 让整个 useEffect 反复重跑,React 提供了什么思路? 本文先给出可直接复述的结论,再用最小代码说明React Effect Event useEffectEvent 实验性的工作方式、判断依据、项目边界和常见误区。

    核心关键词React Effect Event useEffectEvent 实验性
    #Hooks 与复用#Effect
  12. 0012
    ReactHooks 与复用

    在 React useEffect 里启动的定时器总是读到旧的 state,这是为什么,有哪些修复方式?

    在 React useEffect 里启动的定时器总是读到旧的 state,这是为什么,有哪些修复方式? 本文先给出可直接复述的结论,再用最小代码说明React useEffect 定时器 读到旧 state 修复的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useEffect 定时器 读到旧 state 修复
    #Hooks 与复用#Effect
  13. 0013
    ReactHooks 与复用

    在 React 的 useEffect 中订阅聊天服务或 WebSocket 时,为什么清理函数必不可少?

    在 React 的 useEffect 中订阅聊天服务或 WebSocket 时,为什么清理函数必不可少? 本文先给出可直接复述的结论,再用最小代码说明React useEffect 订阅 清理函数 重复连接的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useEffect 订阅 清理函数 重复连接
    #Hooks 与复用#Effect#实时通信
  14. 0014
    ReactHooks 与复用

    eslint-plugin-react-hooks 能发现哪些错误,规则应该怎么配置?

    说明 rules-of-hooks 与 exhaustive-deps 分别检查什么,给出 ESLint 9 的基础 flat config,区分插件推荐预设中的额外诊断,并介绍条件 Hook、遗漏依赖和自定义 Effect Hook 的修复思路。

    核心关键词eslint-plugin-react-hooks exhaustive-deps 规则
    #Hooks 与复用#Effect
  15. 0015
    ReactHooks 与复用

    一段响应式逻辑应该写在 React 事件处理函数里还是 useEffect 里,判断标准是什么?

    一段响应式逻辑应该写在 React 事件处理函数里还是 useEffect 里,判断标准是什么? 本文先给出可直接复述的结论,再用最小代码说明React 事件处理 useEffect 如何选择的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 事件处理 useEffect 如何选择
    #Hooks 与复用#Effect
  16. 0016
    ReactHooks 与复用

    在 React 18 中,如何把函数组件内部的 DOM 节点暴露给父组件调用 focus 等方法?

    在 React 18 中,如何把函数组件内部的 DOM 节点暴露给父组件调用 focus 等方法? 本文先给出可直接复述的结论,再用最小代码说明React forwardRef 父组件 访问子组件 DOM的工作方式、判断依据、项目边界和常见误区。

    核心关键词React forwardRef 父组件 访问子组件 DOM
    #Hooks 与复用
  17. 0017
    ReactHooks 与复用

    设计 useReducer 的 action 时,计算结果应该放进 payload 还是交给 reducer 自己算?

    设计 useReducer 的 action 时,计算结果应该放进 payload 还是交给 reducer 自己算? 本文先给出可直接复述的结论,再用最小代码说明React reducer action payload 设计的工作方式、判断依据、项目边界和常见误区。

    核心关键词React reducer action payload 设计
    #Hooks 与复用#测试
  18. 0018
    ReactHooks 与复用

    为什么 React 的 reducer 必须是纯函数,不能在里面发请求、写 ref 或调用定时器?

    为什么 React 的 reducer 必须是纯函数,不能在里面发请求、写 ref 或调用定时器? 本文先给出可直接复述的结论,再用最小代码说明React reducer 纯函数 副作用 原因的工作方式、判断依据、项目边界和常见误区。

    核心关键词React reducer 纯函数 副作用 原因
    #Hooks 与复用
  19. 0019
    ReactHooks 与复用

    React 19 中函数组件接收 ref 的方式发生了什么变化,与 forwardRef 有何差异?

    React 19 中函数组件接收 ref 的方式发生了什么变化,与 forwardRef 有何差异? 本文先给出可直接复述的结论,再用最小代码说明React 19 ref as prop forwardRef 变化的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 19 ref as prop forwardRef 变化
    #Hooks 与复用
  20. 0020
    ReactHooks 与复用

    React 19 的 ref 回调清理函数怎样工作,为什么内联回调也会触发清理?

    用 DOM 原生事件订阅解释 React 19 ref cleanup 的资源配对,说明节点移除、回调身份变化、Strict Mode 检查及旧版 null 清理的迁移。

    核心关键词React 19 ref callback cleanup 清理函数
    #Hooks 与复用
  21. 0021
    ReactHooks 与复用

    React 为什么不应在渲染时读写 ref.current,惰性初始化为什么是例外?

    区分渲染阶段的可变引用读写与可预测初始化,用点击缓存示例说明事件读写、state 展示和跨渲染容器,并解释资源创建的限制。

    核心关键词React ref current 渲染读写纯度惰性初始化
    #Hooks 与复用#缓存#容器化
  22. 0022
    ReactHooks 与复用

    把 ref.current 当作 useEffect 的依赖,或者直接在 JSX 中渲染 ref.current,会有什么问题?

    把 ref.current 当作 useEffect 的依赖,或者直接在 JSX 中渲染 ref.current,会有什么问题? 本文先给出可直接复述的结论,再用最小代码说明React ref 非响应式 effect 依赖 ref.current的工作方式、判断依据、项目边界和常见误区。

    核心关键词React ref 非响应式 effect 依赖 ref.current
    #Hooks 与复用#Effect
  23. 0023
    ReactHooks 与复用

    React 用 ref 保存前一个值时,“上一次渲染”和“上一次提交”有什么区别?

    通过状态变化记录器解释 ref 保存的历史究竟属于哪个阶段,避免在 render 中读写可变历史,说明首次值、相同值、批处理和可见历史状态的设计。

    核心关键词React useRef 保存前一个已提交值
    #Hooks 与复用
  24. 0024
    ReactHooks 与复用

    React 中 useRef 和 useState 都能跨渲染保存数据,二者的本质区别和适用场景是什么?

    React 中 useRef 和 useState 都能跨渲染保存数据,二者的本质区别和适用场景是什么? 本文先给出可直接复述的结论,再用最小代码说明React useRef 和 useState 区别的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useRef 和 useState 区别
    #Hooks 与复用#异步编程
  25. 0025
    ReactHooks 与复用

    为什么 React 的 Hooks 必须在每次渲染中以完全相同的顺序调用,不能放进条件或循环里?

    为什么 React 的 Hooks 必须在每次渲染中以完全相同的顺序调用,不能放进条件或循环里? 本文先给出可直接复述的结论,再用最小代码说明React Hooks 为什么不能条件调用的工作方式、判断依据、项目边界和常见误区。

    核心关键词React Hooks 为什么不能条件调用
    #Hooks 与复用
  26. 0026
    ReactHooks 与复用

    React 18 的 Strict Mode 下 useEffect 在开发环境为什么会执行两次,怎样写才是安全的?

    React 18 的 Strict Mode 下 useEffect 在开发环境为什么会执行两次,怎样写才是安全的? 本文先给出可直接复述的结论,再用最小代码说明React 18 Strict Mode useEffect 执行两次的工作方式、判断依据、项目边界和常见误区。

    核心关键词React 18 Strict Mode useEffect 执行两次
    #Hooks 与复用#Effect
  27. 0027
    ReactHooks 与复用

    React 的 useImperativeHandle 适合在什么情况下用来约束父组件对子组件的访问?

    React 的 useImperativeHandle 适合在什么情况下用来约束父组件对子组件的访问? 本文先给出可直接复述的结论,再用最小代码说明React useImperativeHandle 暴露 命令式 API的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useImperativeHandle 暴露 命令式 API
    #Hooks 与复用
  28. 0028
    ReactHooks 与复用

    React 的 useLayoutEffect 与 useEffect 执行时机有什么差异,这决定了怎样的使用边界?

    React 的 useLayoutEffect 与 useEffect 执行时机有什么差异,这决定了怎样的使用边界? 本文先给出可直接复述的结论,再用最小代码说明React useLayoutEffect useEffect 时机 闪烁的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useLayoutEffect useEffect 时机 闪烁
    #Hooks 与复用#Effect
  29. 0029
    ReactHooks 与复用

    React 的 useMemo 能解决哪两类问题,为什么不能把它当作结果一定会被缓存的语义保证?

    React 的 useMemo 能解决哪两类问题,为什么不能把它当作结果一定会被缓存的语义保证? 本文先给出可直接复述的结论,再用最小代码说明React useMemo 用途 缓存 语义保证的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useMemo 用途 缓存 语义保证
    #Hooks 与复用#React 性能#缓存
  30. 0030
    ReactHooks 与复用

    useReducer 配合 Context 能否替代 Redux 做全局状态管理,适用边界在哪里?

    useReducer 配合 Context 能否替代 Redux 做全局状态管理,适用边界在哪里? 本文先给出可直接复述的结论,再用最小代码说明React useReducer Context Redux 替代 边界的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useReducer Context Redux 替代 边界
    #Hooks 与复用#状态管理
  31. 0031
    ReactHooks 与复用

    useReducer 返回的 dispatch 函数身份稳定吗,写进 useEffect 依赖数组时能否省略?

    useReducer 返回的 dispatch 函数身份稳定吗,写进 useEffect 依赖数组时能否省略? 本文先给出可直接复述的结论,再用最小代码说明React useReducer dispatch 稳定 依赖数组的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useReducer dispatch 稳定 依赖数组
    #Hooks 与复用#Effect
  32. 0032
    ReactHooks 与复用

    useReducer 的第三个参数 init 函数有什么作用?

    useReducer 的第三个参数 init 函数有什么作用? 本文先给出可直接复述的结论,再用最小代码说明React useReducer init 惰性初始化 第三个参数的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useReducer init 惰性初始化 第三个参数
    #Hooks 与复用
  33. 0033
    ReactHooks 与复用

    什么时候应该把 React 组件里的 useState 重构为 useReducer?

    什么时候应该把 React 组件里的 useState 重构为 useReducer? 本文先给出可直接复述的结论,再用最小代码说明React useReducer useState 何时重构的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useReducer useState 何时重构
    #Hooks 与复用
  34. 0034
    ReactHooks 与复用

    什么情况下必须使用 React setState 的函数式更新形式而不是直接传新值?

    什么情况下必须使用 React setState 的函数式更新形式而不是直接传新值? 本文先给出可直接复述的结论,再用最小代码说明React setState 函数式更新 updater的工作方式、判断依据、项目边界和常见误区。

    核心关键词React setState 函数式更新 updater
    #Hooks 与复用
  35. 0035
    ReactHooks 与复用

    给 React 的 useState 传一个函数和直接传初始值有什么区别?

    给 React 的 useState 传一个函数和直接传初始值有什么区别? 本文先给出可直接复述的结论,再用最小代码说明React useState 惰性初始化 函数参数的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useState 惰性初始化 函数参数
    #Hooks 与复用
  36. 0036
    ReactHooks 与复用

    为什么 useSyncExternalStore 的 getSnapshot 必须返回缓存的值,而不能每次新建一个对象?

    为什么 useSyncExternalStore 的 getSnapshot 必须返回缓存的值,而不能每次新建一个对象? 本文先给出可直接复述的结论,再用最小代码说明React useSyncExternalStore getSnapshot 缓存 无限循环的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useSyncExternalStore getSnapshot 缓存 无限循环
    #Hooks 与复用#缓存
  37. 0037
    ReactHooks 与复用

    React 的 useSyncExternalStore 是为解决什么问题而设计的?

    React 的 useSyncExternalStore 是为解决什么问题而设计的? 本文先给出可直接复述的结论,再用最小代码说明React useSyncExternalStore tearing 并发的工作方式、判断依据、项目边界和常见误区。

    核心关键词React useSyncExternalStore tearing 并发
    #Hooks 与复用#并发编程
上一页
1
下一页
前端进阶之旅本地 Markdown 维护 · 服务端分页 · 完整内容对用户与搜索引擎一致