Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How does the inner function in a HOC get the props

I'm just getting my head around using HOC in React, one thing that is confusing me slightly is, how does my inner function in this example gain access to props as an argument?

const withProps = Component => (
  props => {
    return <Component {...props}/>
  }
)

export default withProps
like image 278
Samuel Avatar asked Nov 08 '22 07:11

Samuel


1 Answers

To add more to what @AliAnarkali said, a HOC returns you a component so when you write like

const EnhancedApp = withProps(App);

EnhancedApp is basically

  const EnhancedApp = props => {
    return <Component {...props}/>
  }

which a functional component and when you render EnhancedApp like

<EnhancedApp onChange={this.onChange} value={this.state.value} />

It is similar to how a functional component receives onChange and value as props and hence in an HOC, the inner function gets the props like this.

like image 148
Shubham Khatri Avatar answered Nov 15 '22 05:11

Shubham Khatri