一、为什么要了解React Fiber

起因是我们项目的UI库进行了x位版本的升级,也就是0.x => 1.x的一次升级,这个UI库的1.x版本依赖使用react 16,而0.x版本和我们的项目是依赖使用的react 15,在查阅了官方和别人的升级过程后,发现

  • componentWillMount
  • componentWillUpdate
  • componentWillRecieveProps

三个生命周期被官方标记为不安全,在react 16中可以增加UNSAFE_前缀来使用

  • UNSAFE_componentWillMount
  • UNSAFE_componentWillUpdate
  • UNSAFE_componentWillRecieveProps

并增加了两个新的生命周期

  • static getDerivedStateFromProps
  • getSnapshotBeforeUpdate

react 17进行正式取代。

本着求知的精神继续查阅发现react官方将推行异步渲染这一功能。
而被标记为不安全的生命周期在异步渲染的过程中会被重复触发,故被标记为不安全并被取代。

阅读更多