首页 > 其他分享 >深入认识setState

深入认识setState

时间:2023-03-09 11:23:34浏览次数:32  
标签:状态 函数 异步 认识 React 改变 深入 setState

深入认识React类组建修改状态-setState

  • setState,它对状态的改变,可能是异步的;
  • 如果改变状态的代码处于HTML元素事件中,则其是异步的,否则是同步
  • 如果遇到某个事件中,需要同步调用多次,需要使用的函数方式得到最新状态。

最佳实践

  1. 把所有的setState当作是异步的。
  2. 永远不要信任getState调用之后的状态
  3. 如果要使用改变之后的状态,需要使用回调函数(setState的第二个参数)
  4. 如果新的状态要根据之前的状态进行计算,使用函数的方式改变状态(setState 的第一个函数)

React会对异步的setState进行优化,将多次setState进行合并(将多次状态改变完成后,在统一对state进行改变,然后触发render)

标签:状态,函数,异步,认识,React,改变,深入,setState
From: https://www.cnblogs.com/bingquan1/p/17197663.html

相关文章

  • 一文深入 Redis 主从复制的原理详解
    文章目录:1、复制过程2、数据间的同步3、全量复制4、部分复制5、心跳6、异步复制复制原理1.复制过程复制的过程步骤如下:1、从节点执行slaveof命令2、从节......
  • python的基本认识
    python的基本认识 初识python:python是一种跨平台的、开源的、免费的、解释型的高级编程语言;python的应用领域十分广泛、如web编程、图像处理、黑客编程、网络爬虫和......
  • 10. 深入面向对象 - 2
    10.深入面向对象-2隐藏数据引入classCat(object):def__init__(self,new_name,new_age):self.name=new_nameself.age=new_aged......
  • 深入理解需求分析的目标(C系架构设计法)
    需求分析的目标:是尽可能准确、全面、深入的理解业务。1:理解“尽可能准确”首先,需求分析,要做的事,肯定是去理解业务,但是要达到什么样的程度,才算是我们理解了这个业务呢?第......
  • 认识交换机硬件
    产品总站点:https://info.support.huawei.com/info-finder/search-center/zh/enterprise/switch#switch以基础交换机和数据中心交换机两种典型产品来认识交换机CloudEngin......
  • Java分布式应用:深入了解JVM
    第三部分深入理解JVMJava代码的执行过程Java源码编译机制javac将java源码转换成javaclass字节码java运行javaclass字节码Java编译后产生的是字节码,在运行的时候将字......
  • 认识Servlet
    Servlet(ServerApplet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生......
  • 深入解读.NET MAUI音乐播放器项目(三):界面交互
    UI设计的本质是对于产品的理解在界面中多种形式的映射,当需求和定位不同时,对相同的功能表达出了不同的界面和交互方式。作为播放器,界面可以是千差万别的。《番茄播放器》的......
  • Book-深入设计模式-访问者模式
    Book-深入设计模式-访问者模式https://refactoringguru.cn/design-patterns/visitor访问者模式亦称:Visitor访问者模式是一种行为设计模式,它能将算法与其所作用的对象......
  • Book-深入设计模式-策略模式
    Book-深入设计模式-策略模式https://refactoringguru.cn/design-patterns/strategy策略模式亦称:Strategy策略模式是一种行为设计模式,它能让你定义一系列算法,并将每......