首页 > 其他分享 >调和阶段setState干了什么?

调和阶段setState干了什么?

时间:2024-07-29 19:57:43浏览次数:14  
标签:调和 DOM 更新 React 阶段 组件 setState

调和阶段:

在react中,当组件的props或state发生变化时,react会开始一个新的渲染过程。这个渲染过程包括几个阶段,其中之一就是调和阶段。在这个阶段,react会比较新旧虚拟DOM树之间的差异,并计算出需要更新的最小集合。

setState干了什么?

  1. 触发更新:当你调用setState时,你实际是告诉React,组件的某个状态已经挂边,React需要将这个改变反映到UI上。setState是异步的,意味着React不会立即更新组件,而是这个更新计划到未来某个时间点。
  2. 合并状态:如果你多次在很短的时间内调用setState,React会将setState进行合并,而不是执行他们每次调用的副作用。有助于避免不必要的重新渲染。
  3. 进入调和状态:一旦React决定更新组件,它会进入调和阶段。React会基于新的state重新渲染组件。react会就算出新旧虚拟DOM之间的差异,并准备必要的DOM更新。
  4. DOM更新:在调和阶段之后,React会执行DOM更新,以反映组件的最新状态。这个步骤是在React的提交阶段完成的。

总结:setState在react的调和阶段中触发了组件的更新过程,但这个更新本身是在React的调和和提交阶段中完成的

标签:调和,DOM,更新,React,阶段,组件,setState
From: https://blog.csdn.net/Feng_warm/article/details/140716282

相关文章

  • 【HW系列】事前准备(10):事前阶段小结
    本章为该系列的第10篇,也是事前准备阶段的第10篇,通过本章做个小结,来结束事前准备阶段的介绍,从下一篇开始,将正式进入事中迎战阶段。有幸观摩过一场线下沙龙,在讨论过程中,我发现不同性质的企业,安全的建设方案完全不一样。当时在讨论邮件安全的议题,一位互联网公司的小伙直接打趣金融行......
  • 考研数学强化阶段刷题建议
    前言按照正常的进度,目前7月下旬大家基本都已经进入了强化阶段,那么在强化阶段我们的数学该刷什么题呢?哪个题更好呢?怎么搭配比较合适呢?什么时间刷完合适呢?下面我给大家详细回答一下。刷题建议1.强化讲义中的例题强化讲义中的例题都是编辑从很多题里面选出的该题型中的比较经......
  • MySQL第一阶段:多表查询、事务
            继续我的MySQL之旅,继续上篇的DDL、DML、DQL、以及一些约束,该到了多表查询和事务的学习总结,以及相关的案例实现,为未来的复习以及深入的理解做好知识储备。目录多表查询连接查询内连接外连接子查询事务 事务简介事务操作事务四大特征多表查询多......
  • 创建vue 2的时候出bug我看不懂,求大佬们帮帮忙,还在学习阶段
    VueCLIv5.0.8?Pleasepickapreset:Default([Vue2]babel,eslint)VueCLIv5.0.8✨ CreatingprojectinF:\aaa\eee\aaa.......
  • 【无标题】考研数学强化阶段刷题建议
    ......
  • MySQL第一阶段:表关系
    表关系表关系分为一对多、多对多、一对一表关系之一对一一对一比如用户和用户的详细内容一对一关系多用于表拆分,将一个实体中经常要用的字段放在一张表,不经常使用的字段放到另一张表,用于提升查询性能。实现方式:在任意一方加入外键,关联另一方的主键,并且设置外键为唯一约束......
  • vue的运行过程和各阶段分析
    Vue.js的运行过程可以分为以下几个主要步骤:1.初始化阶段a.解析模板(TemplateParsing)Vue.js使用HTML-based模板语法,当创建一个Vue实例时,它会将提供的模板字符串编译成渲染函数(renderfunction)。这个过程包括了将模板中的指令(如v-if、v-for)和插值表达式(如{{message......
  • ​大模型发展进入产业应用新阶段
    自2022年底ChatGPT上线以来,不到一年时间里,人工智能大模型已经成为一条社会各界普遍认可的新赛道。随着越来越多玩家快速涌入,产业也开始逐渐摆脱炒概念的过热阶段,向实际应用落地的新阶段演进。这条赛道当前面临着激烈的国际竞争,我国还需扬长避短,走出发展新路径。技术突破让......
  • 前端使用 Konva 实现可视化设计器(18)- 素材嵌套 - 加载阶段
    本章主要实现素材的嵌套(加载阶段)这意味着可以拖入画布的对象,不只是图片素材,还可以是嵌套的图片和图形。请大家动动小手,给我一个免费的Star吧~大家如果发现了Bug,欢迎来提Issue哟~github源码gitee源码示例地址在原来的drop处理基础上,增加一个json类型素材的处理入......
  • 自学网络安全的三个必经阶段(含路线图)
         一、为什么选择网络安全?这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等一系列政策/法规/标准的持续落地,网络安全行业地位、薪资随之水涨船高。未来3-5年,是安全行业的黄金发展期,提前踏入行业,能享受行业发展红利。二、为什么说网......