首页 > 其他分享 >hooks

hooks

时间:2022-10-08 00:44:51浏览次数:65  
标签:count 函数 hooks setCount let 执行

state hook

const [count, setCount] = useState<number>(10)
// 必须用setCount更新count,但是setCount是一个异步函数,在频繁地操作时会有一些问题
<button onClick={
  () => {
    for (let i=1; i<=10; i++) {
      setCount(count + i)
    }
  }
}>
它会合并执行,只执行最后一次,结果是19,这样问题还不大,但是这样
<button onClick={
  () => {
    for (let i=1; i<=10; i++) {
      setCount(count + 1)
    }
  }
}>
它也只执行最后一次,这样就会导致结果是11,与预期不符

这种频繁地操作,需要这样写:(当setCount中传入的是函数的时候,它会自动传入count作为参数,并执行该函数),相当于是  (c) => c + 1;传入count,返回的就是count+1,setCount(count + 1)

<button onClick={
  () => {
    for (let i=1; i<=10; i++) {
      setCount((c) => c + 1)  // 这个形参代表的是count,因为setCount会把count做参数传参给该函数,形成闭包
    }
  }
}>

标签:count,函数,hooks,setCount,let,执行
From: https://www.cnblogs.com/Lilc20201212/p/16767591.html

相关文章

  • 【Vue3.x】自定义hooks
    Vue3hooksvue2里的mixins相似,但是mixins会组件的配置项覆盖。vue3使用了自定义hooks替代mixnins,hooks本质上是函数,引入调用。封装自定义的hooks将图片转化成base64im......
  • React-hooks面试考察知识点汇总
    Hook简介Hook出世之前React存在的问题在组件之间复用状态逻辑很难React没有提供将可复用性行为“附加”到组件的途径(例如,把组件连接到store)。有一些解决此类问题的......
  • React-Hooks怎样封装防抖和节流-面试真题
    Debouncedebounce原意消除抖动,对于事件触发频繁的场景,只有最后由程序控制的事件是有效的。防抖函数,我们需要做的是在一件事触发的时候设置一个定时器使事件延迟发生,在......
  • React-Hooks怎样封装防抖和节流-面试真题
    Debouncedebounce原意消除抖动,对于事件触发频繁的场景,只有最后由程序控制的事件是有效的。防抖函数,我们需要做的是在一件事触发的时候设置一个定时器使事件延迟发生,在......
  • React-Hooks源码深度解读
    useState解析useState使用通常我们这样来使用useState方法functionApp(){const[num,setNum]=useState(0);constadd=()=>{setNum(num+1);......
  • 怎样对react,hooks进行性能优化?
    前言现在越来越多人开始使用ReactHooks+函数组件的方式构筑页面。函数组件简洁且优雅,通过Hooks可以让函数组件拥有内部的状态和副作用(生命周期),弥补了函数组件的不足......
  • Orchestrator中的hooks函数
    目录hooks分类hooks的执行Orchestrator中有很多hooks函数,用于调用外部服务做一些配置或者准备等工作。hooks分类Orchestrator中主要有以下这些hooks,按照其执行顺序依次......
  • 今日部分知识点总结———SQL注入,hooks的优缺点,cookies,xxxStorage的区别,BFC,合并二叉
    SQL注入在浏览器页面用户提交数据处,输入特定的字符实现sql语句的篡改,从而对数据库进行操作。比如在一个登录界面,要求输入用户名和密码,可以这样输入实现免帐号登录;用户名......
  • react hooks组件父组件调用子组件方法
    函数组件父组件调用子组件方法需要使用useImperativeHandle和forwardRef两个方法1.子组件    2.父组件 注意:一定要使用ref来接从子组件传过来的实例值,用......
  • 让我们深入了解 React 中的 useState 和 useRef Hooks
    让我们深入了解React中的useState和useRefHooksPhotoby沙哈达特·拉赫曼on不飞溅如果我问你什么是钩子,那么你会说钩子是类的替代品,可以让你在不编写类的情......