Skip to content

react 原理

Posted on:May 2, 2025

前置知识

​ fiber : 一种结构,双向链表对象。

​ Q:为什么要有这种结构?

​ A: 在之前更新是递归更新,当组件较多时,一次更新要把所有组件都执行一遍才行,又因为js单线程,当时没有停止的操作,所以会造成页面卡顿等情况,所以有了这种结构

​ Q:为什么有了这种结构就能减少卡顿?

​ A: 我们可以提前计算好更新花费的时间,当会阻塞渲染时,记录后面要更新的组件,因为是双向链表,记录一个就能获取全局的状态信息,当画面绘制完继续之前的更新,这样就不会造成画面卡顿。

初始化阶段

从水下第一个生命的萌芽开始

渲染阶段

渲染阶段

commit 阶段

Hooks

useEffect

useState