[react] 举例说明什么是高阶组件(HOC)的反向继承

[react] 举例说明什么是高阶组件(HOC)的反向继承

import React from 'react';

const hoc = (WrappedComponent) => {
  // 集成需要包装的 Component
  return class extends WrappedComponent {
    constructor(props) {
      super(props);
    }
    // 重写 component 生命周期
    componentDidMount() {
      console.log('----> hoc didmount');
    }
    // render 继续使用被包装的 Component 的 render 方法
    render() {
      return super.render();
    }
  }
}

class Title extends React.Component {
  constructor(props) {
    super(props);
  }
  componentDidMount() {
    console.log('---> title didmount');
  }
  render() {
    return <h1>{this.props.title}</h1>
  }
}

export default () => {
  const HOCComponent = hoc(Title);
  return <HOCComponent title={'title'} />
}

 个人简介

我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论









主目录

与歌谣一起通关前端面试题

相关文章

一、前言 在组件方面react和Vue一样的,核心思想玩的就是组件...
前言: 前段时间学习完react后,刚好就接到公司一个react项目...
前言: 最近收到组长通知我们项目组后面新开的项目准备统一技...
react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...