react 中 useState 中的 set 方法异步解决

使用 `useEffect` 监听状态的改变。

一、异步特性

在批量处理状态更新时,用以提高性能。

二、异步解决

使用`useEffect`来处理更新后的状态,`useEffect`钩子在组件渲染后执行,并且会在依赖项(第二个参数)发生变化时重新执行。可以利用这个特性来处理`useState`更新后的状态。

javascript 复制代码
import { useState, useEffect } from "react";

function MyComponent() {

  const [count, setCount] = useState(0);

  const handleClick = () => {

    setCount(count + 1);

    setCount(count + 2);

  };

  useEffect(() => {

    console.log("Count has been updated:", count);

  }, [count]);

  return (

    <div>

      <p>Count: {count}</p>

      <button onClick={handleClick}>Increment</button>

    </div>

  );

}
相关推荐
李伟_Li慢慢5 分钟前
10-mini版bindingStates
前端·three.js
এ慕ོ冬℘゜6 分钟前
深入 JavaScript BOM:掌握 window 对象的窗口控制魔法
开发语言·javascript·ecmascript
李伟_Li慢慢7 分钟前
08-BufferAttribute
前端·three.js
李伟_Li慢慢8 分钟前
09-mini版WebGLAttributes
前端·three.js
李伟_Li慢慢9 分钟前
11-mini版WebGLGeometries
前端·three.js
李伟_Li慢慢10 分钟前
18-mini版WebGLRenderList
前端·three.js
李伟_Li慢慢11 分钟前
15-mini版WebGLMaterials
前端·three.js
ji_shuke18 分钟前
Vue3 前端批量打印 PDF/图片踩坑记:跨域、合并打印、对话框闪退与按钮一直 loading
前端·pdf·状态模式·pdf打印
李伟_Li慢慢18 分钟前
06-mini版WebGLState
前端·three.js
李伟_Li慢慢23 分钟前
04-three.js的渲染流程概览
前端·three.js