2.0 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 节点的优先值