react17没有新功能,承上启下的战略版本
- breaking change
- 事件委托机制改变
- 向原生浏览器靠拢,onFocus,onScroll
- 删除事件池
- useEffect请求操作改为异步操作
- jsx不可以返回 undefined 或 null
- 删除了部分私有 api,针对 react native的
- 替换了底层的代码,向下兼容,甩掉了历史包袱;没有代码断层,给未来留下了足够的空间
- 渐进升级
- 逐步升级的方案,允许多个react版本共存
- 先升级路由系统,在升级弹窗,平滑的过渡到最新版本
- react18预想
- 更加强调函数式组件
- 支持微前端架构
render新的返回类型
错误处理
Portals
自定义DOM属性
方法
react@version 17.0.2
const react = [
"__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
"Children",
"cloneElement",
"Component",
"createContext",
"createElement",
"createFactory",
"createRef",
"forwardRef",
"Fragment",
"isValidElement",
"lazy",
"memo",
"Profiler",
"PureComponent",
"StrictMode",
"Suspense",
"useCallback",
"useContext",
"useDebugValue",
"useEffect",
"useImperativeHandle",
"useLayoutEffect",
"useMemo",
"useReducer",
"useRef",
"useState",
"version"
]