数据提供渲染为 HTML 视图的开源 JavaScript 库
上周帮同事排查一个 React 页面的 bug:点击按钮修改了 state 里的对象属性,接口数据回来了,控制台也打印了新的值,但页面上的数字和列表纹丝不动。代...
在 React 里处理表单输入时,onChange 的表现和原生 DOM 的 change 事件完全不是一回事。原生的 change 通常要等到输入框失去焦点才...
在 React 函数组件中使用 useCallback 时,一个常见的困扰是:明明已经用 useCallback 包裹了回调函数,但内部访问的 state 或 ...
上周排查了一个后台管理页面的卡顿问题,页面里有一个 200 行左右的数据表格,每行都渲染了一个带删除按钮的操作列。用户点击任意一行删除时,整个表格重新渲染,肉眼...
React 的 useEffect 里用 async 函数获取数据这个写法,几乎每个项目里都能见到。大多数情况下页面看起来正常,但遇到路由快速切换、搜索框连续输...
在 React 函数组件中,useEffect 是处理副作用的核心 Hook。很多人习惯把依赖数组当作“触发条件”来用,比如传入一个空数组模拟 componen...
在 React 函数组件里使用 useState 时,很多人会碰到一个看似诡异的问题:明明调用了 setCount,但事件回调或定时器里拿到的 count 始终...
在 React 函数组件中,useEffect 的依赖数组决定了副作用何时重新执行。很多开发者习惯把组件内定义的对象、数组或函数直接放进依赖项,结果发现 use...
很多人第一次写 useEffect 时都会默认“依赖数组就是告诉 React 什么时候重新执行副作用”。这个理解在简单场景下能用,但一旦涉及对象、函数、闭包和并...
在 React 18 的 StrictMode 下,开发环境里组件挂载时 useEffect 会执行两次。这不是 bug,而是 React 为了帮助开发者提前发...
上周排查了一个线上问题:一个用 useReducer 管理表单状态的组件,在某个操作后数据明明已经变了,但界面纹丝不动。用 React DevTools 看,s...
在 React 18 的并发模式(Concurrent Mode)下,组件在开发环境使用 StrictMode 时,useEffect 会执行两次(mount ...
在 React 函数组件里用 useState 管理状态时,经常会遇到一个让人困惑的现象:调用 setState 之后,当前这次渲染中读到的 state 还是旧...
最近在排查一个线上问题时,发现一个组件的定时器在卸载后仍然在跑,导致内存泄漏和额外的请求。代码看起来很正常:useEffect 里启动了 setInterval...
React Query在短短一年内增长了50%,现在已被超过20%的React应用使用。是什么推动了开发者如此迅速地采用它?答案在于React Query如何解...
多年来,React 开发者习惯使用 useContext 在全局共享状态,而不用把 props 一层层传递下去。虽然这种方式可行,但即将到来的 use() AP...
React Hooks 已经问世多年,但大多数代码库仍然以同样的方式使用它们:用点 useState,过度使用 useEffect,以及大量不经思考就复制粘贴的...
在中文、日文、韩文等输入法环境下,React 的受控输入组件经常出现一个隐蔽却影响体验的问题:用户正在拼音输入时,输入框的内容会被意外重置或光标跳到末尾。比如一...
单轮对话的大模型是「答题机器」,而真正能干活的是 Agent——给它一堆工具,它能自己决定先查什么、再算什么、最后做什么。但 Agent 怎么编排,直接决定了它...
在用 React 开发列表和表单时,经常遇到一个现象:父组件状态一变,所有子组件都跟着重渲染,哪怕传给子组件的 props 完全没变。为了避免这种浪费,很多人会...