React Fiber架构

React Fiber架构是React核心算法的发展的再实现,是React团队两年来的研究高潮。

React Fiber目标是提高动画,布局和手势等领域的适应性,它的重要特征是增量渲染,能够将渲染工作划分为一块块,然后在多个帧frame中传播。

另外一个关键能力是在当有新的更新时,提供暂停,退出,或重用等能力,分配优先权给更新的不同类型和新的并发原语。

React Fiber在更新和渲染之间提供了调停reconciliation功能,原来React一旦有更新,就立即进行渲染,非常刚性,反而造成了更新和渲染之间的不同步,而调停reconciliation功能能异步进行渲染,或进行计划调用更新,保证动画和手势等对响应要求很快的应用有快速的流畅性。

关键点:
1.在UI界面中,不是所有更新需要立即渲染的,如果这么做会很浪费,引起帧frame丢失和降低用户体验。
2.不同类型的更新应该有不同优先级,一个动画更新应该比其他比如数据存储更新更快,更有优先权。
3.基于推的方式需要应用决定如何调用工作,而基于拉的方式则能够让react框架更加智能,将更多决定权放给你。这样一旦有更新,不再像以前采取推的方式,而是采取拉的方式。


react-fiber-architecture/README.md at master · acd