# 为什么学习 React

  • 函数式编程。
  • 组件化开发。
  • 跨平台。支持 Node 服务端渲染和用 React Native 开发原生应用。

# React 里程碑

React 发展史中的重要阶段及推出的新功能:

  • v16.0:为了解决一次更新遍历大量虚拟 DOM 带来卡顿的问题,启用了 Fiber 架构;推出 createPortal API;引入 componentDidCatch 处理错误;
  • v16.2:Fragment;
  • v16.3:推出 context API;React.createRef();React.forwardRef(),解决高阶组件 ref 传递问题;增加 getDerivedStateFromProps 和 getSnapshotBeforeUpdate 生命周期;
  • v16.6:React.memo()、React.lazy()、getDerivedStateFromError 代替 componentDidCatch;
  • v16.8:React-Hooks
  • v17:事件绑定由 document 变成了 container,移除时间池等。