>commitRootImpl 是 React commit 阶段非常重要的一个函数,这个阶段完成了对 effectList 的遍历和页面渲染,这个函数处理可以分为三个阶段,分别是:before、mutation 和 layout 进入 commitRootImpl 函数,首先会进入 do..while 循环内执行 flushPassiveEffects,直到 rootWithPendingPassiveEffects 不等于 null 才会跳出循环 ### flushPassiveEffects 这个函数在 useEffect 和 useLayoutEffect 阶段会用到; TODO ### flushRenderPhaseStrictModeWarningsInDEV 从名字可以看出是开发环境相关的函数,似乎是针对 Strict 模式;TODO ### markCommitStarted ### markCommitStopped 重置 root 也就是全局唯一根节点 FiberRootNode 的 finishedWork 和 finishedLanes 重置 root 也就是全局唯一根节点 FiberRootNode 的 callbackNode 和 callbackPriority ### mergeLanes ### markRootFinished 如果 FiberRootNode 和 workInProgressRoot 相等,重置 workInProgressRoot 、workInProgress 和 workInProgressRootRenderLanes,~~这里没有看懂~~