无状态组件在需要生命周期时,可以通过高阶组件来实现
如下:
1.无状态组件作为高阶组件的参数,并在最后通过调用高阶函数 导出 一个高阶组件
//这是一个无状态组件 TableComponent import React from 'react' import { Table } from './table' // 高阶函数 const TableComponent = (props) => { return ( <div> {props.dataSource} </div> ) } export default Table(TableComponent);
2.写一个高阶组件,里面写任何需要的生命周期
import React from 'react' export const Table = (ComposedComponent) => { return class extends React.Component { constructor(props) { super(props) } componentDidMount() { console.log('componentDidMount'); } render() { return ( <ComposedComponent {...this.props}/> ) } } }
3.直接在需要的地方引入高阶组件调用即可,跟其他组件引用一样