美文网首页
React高级指引

React高级指引

作者: shanshanfei | 来源:发表于2021-02-03 10:42 被阅读0次

React高级指引
1、context
一般用于嵌套组件需要共享上级组件状态的场景,避免层层传递。
订阅多个context

总结:
三种使用方式,contextType, Consumer和useContext。
区别:
ContextType,使用简单,必须用在类组件上,只能通过该API订阅单一context.
Consumer,最广泛使用的
useContext,Hook方法,只能用在函数组件当中或者自定义的Hook当中。

2、render props
将一个render函数作为prop属性进行传递。
解决的问题是:比如只有最底层下级组件依赖上级组件的状态,就可以把相关的渲染内容放到render function中进行传递,减少传递的属性数。不同的上级组件可以专属定制,不用底层组件去硬编码适配。

3、错误边界ErrorBoundary
部分渲染错误 不应该导致整个应用崩溃。一个错误的UI还不如不展示,比如支付场景。ErrorBoundary支持出错时,展示备用UI,用户体验更友好。

4、Refs转发 参考
当给一个子组件传递了ref时,如果子组件是被高阶组件包裹的,则ref实际指向的是高阶组件,而不是被包裹的子组件,如果要继续传递给子组件,则需要在高阶组件中进行refs转发:React.forwardRef((props, ref) => <Component ...props forwaredRef={ref} />),这样子组件可以拿到ref

5、Fragments
开发中常见的一个场景是代码分组,React.Fragment允许我们将代码分组但是又不添加额外的dom节点。短语法是:<>...</>

6、高阶组件HOC(higher-order-component)

7、React.createPortal
Portal 提供了一种将子节点渲染到存在于父组件以外的 DOM 节点的优秀的方案

相关文章

  • 目录引导

    核心概念高级指引React APIHOOK

  • React高级指引

    React高级指引1、context一般用于嵌套组件需要共享上级组件状态的场景,避免层层传递。订阅多个contex...

  • React高级指引(1)

    深入JSX JSX是React.createElement(component, props,...childre...

  • React高级指引(2)

    Refs & DOM Refs提供了一种方式,用于访问在render方法中创建的DOM节点或React元素创建Re...

  • React高级指引(3)

    Reconciliation(协调) 对比算法 当对比两棵树,React首先比较两个根节点 当根节点变化,Reac...

  • React高级指引学习--深入JSX

    本质上来讲,JSX 只是为 React.createElement(component, props, ...ch...

  • React高级指引学习--深入PropTypes

    注意: React.PropTypes 自 React v15.5 起已弃用。请使用 prop-types 库代替...

  • 高级指引

    无障碍 掠过~靠后 代码分割 打包: 通常使用webpack、Rollup、Browserify等构建...

  • 最新web前端相关课程学习链接

    js基础篇 js进阶篇 js高级篇 vue基础篇 vue高级篇 react基础 react高级 Nodejs基础 ...

  • react进阶

    参看react中文文档的react高级指南 JSX 只是React.createElement(component...

网友评论

      本文标题:React高级指引

      本文链接:https://www.haomeiwen.com/subject/feyptltx.html