react17没有新功能,承上启下的战略版本

  1. breaking change
    1. 事件委托机制改变
    2. 向原生浏览器靠拢,onFocus,onScroll
    3. 删除事件池
    4. useEffect请求操作改为异步操作
    5. jsx不可以返回 undefined 或 null
    6. 删除了部分私有 api,针对 react native的
  2. 替换了底层的代码,向下兼容,甩掉了历史包袱;没有代码断层,给未来留下了足够的空间
  3. 渐进升级
    1. 逐步升级的方案,允许多个react版本共存
    2. 先升级路由系统,在升级弹窗,平滑的过渡到最新版本
  4. react18预想
    1. 更加强调函数式组件
    2. 支持微前端架构

render新的返回类型
错误处理
Portals
自定义DOM属性

方法

react@version 17.0.2

  1. const react = [
  2. "__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
  3. "Children",
  4. "cloneElement",
  5. "Component",
  6. "createContext",
  7. "createElement",
  8. "createFactory",
  9. "createRef",
  10. "forwardRef",
  11. "Fragment",
  12. "isValidElement",
  13. "lazy",
  14. "memo",
  15. "Profiler",
  16. "PureComponent",
  17. "StrictMode",
  18. "Suspense",
  19. "useCallback",
  20. "useContext",
  21. "useDebugValue",
  22. "useEffect",
  23. "useImperativeHandle",
  24. "useLayoutEffect",
  25. "useMemo",
  26. "useReducer",
  27. "useRef",
  28. "useState",
  29. "version"
  30. ]