1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| import React from "react"
const withCounter = (OriginalComponent, step) => { class newComponent extends React.Component { constructor(props) { super(props)
this.state = { count: 0, } }
increase = () => { this.setState((pre) => { return { count: pre.count + step, } }) }
render() { let { count } = this.state
return ( <OriginalComponent increase={this.increase} count={count} {...this.props} /> ) } }
return newComponent }
export default withCounter
|