How does the inner function in a HOC get the props

2019-01-12 10:42发布

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

1条回答
啃猪蹄的小仙女
2楼-- · 2019-01-12 10:49

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.

查看更多
登录 后发表回答