React 16

  • fregment:
    空标签
  • Portal:
    直接createElement&append到dom的任意位置,甚至是app-root外的body上
  • Fiber:
    渲染空闲时执行复杂的递归的diff算法(这一版的diff从大递归变为大循环,为了实现暂停)
    基于API:requestIdleCallback,性能好不卡顿的渲染是1s60帧左右,在一帧时间16.7ms内,执行完渲染就可以回调该api的任务(diff、预操作dom)
    diff:fiber是可以使某个组件上的diff算法随时停掉,再在空闲时继续(没完成的组件重新diff),一步一步遍历完virtual-dom,做完diff和元素创建、update等等dom操作以后,一次性patch到实际的dom,防止ui不连续性,影响体验
  • hooks:
    不创建类使用state(定义元素和set方法。[bar,setBar]=useState(‘bar’) )、生命周期函数(useEffect类似didmount和didupdate),测试hook
    适用于不需要严格控制生命周期,只需要state和didmount之类的简单组件;

React HOC&Mixin:

https://www.jianshu.com/p/5853b5d9535f

未完待续

你可能感兴趣的:(React 16)