1.9 KiB
tag :
表示 Fiber 的类型,根据 ReactElement 组件的
type
生成
elementType :
大部分时候和 type 是相同的 FunctionComponent 使用 React.memo 会有不同
type :
FunctionComponent 而言是函数本身 ClassComponent 而言是 Class Host Component 而言是 DOM 节点的 Tag Name
key :
和 ReactElement 的 key 属性一致
stateNode :
HostComponent 而言,是它的真实 DOM 节点 ClassComponent 而言是 clsss 实例
return :
指向父节点
child :
指向第一个子节点
sibling :
指向下一个兄弟节点
index :
代表在多个同级 Fiber 节点中,它们插入的位置索引 单节点默认为 0
ref :
指向在 ReactElement 组件上设置的 ref
pendingProps:
组件的属性,也就是 ReactElement 传入的 props 用于和后边的 memoizedProps 属性比较判断组件属性是否发生变化 在生成子 Fiber 节点之后被赋值到 memoizedProps
memoizedProps:
上一次组件生成的属性,用于和上边的 pendingProps 进行比较
alternate :
指向在内存中的另外一条 Fiber 树
updateQueue :
存储 update更新对象 的队列,每次发起更新,都需要在该队列上创建一个 update 对象
memoizedState:
上一次生成子组件之后组件的状态
dependencies:
该 Fiber 节点所依赖的 (contexts, events)
mode :
和 React 的运行模式有关
flags :
用于标记组件的副作用,reconciler 会将所有存在 flag 标记的 Fiber 节点添加进 effectList 链表中,交给 commit 阶段
subtreeFlags :
替代 16.x 版本中的 firstEffect、lastEffect,默认未开启
deletions :
存储将要被删除的子组件,默认未开启
nextEffect :
指向下一个有副作用的 Fiber 节点
firstEffect :
指向副作用链表的第一个 Fiber 节点
lastEffect :
指向副作用链表的最后一个 Fiber 节点
lanes :
Fiber 节点的优先级
childLanes :
子 Fiber 节点的优先值