回答思路:早期react是如何渲染-->有react-fiber后如何渲染-->它解决了什么问题
早期react是如何渲染:React应用的渲染是同步进行的,即只要一开始渲染就一直执行,直到完成。这种方式在处理大型、复杂的组件时可能会导致主线程被阻塞,导致用户界面卡顿、无响应。
有react-fiber后如何渲染:它将渲染过程分解成多个小任务,并且允许中断和恢复渲染过程,使得渲染过程可以在多个帧中分布执行。将控制权还给主线程,使得如用户交互等能得到响应。
通过什么进行中断和恢复:是通过requestIdleCallback(task)这个回调函数来进行中断的控制和进行的,如果一秒60帧的话,一帧就是16.6毫秒,这个API可以判断浏览器在16.6毫秒内还有没有空闲时间,如果有的话可以执行渲染任务
它解决了什么问题:react fiber解决了react渲染过程的同步阻塞问题,通过增量渲染和优先级控制来实现更好的用户体验,提升了react应用的响应能力和性能。