ReactJs / Javascript - HOC可以读取参数组件的道具吗?

时间:2016-02-06 03:10:10

标签: javascript reactjs

  

我有一个高阶组件,它接收另一个组件作为参数:

HOC

export default function HOC(Comp) {
  return class extends Component {

  doSomething() {
    const temp = // the Comp's clientId prop???
  }
  ........

 }
}   

子组件

@HOC
export default class SubComponent extends Component {    
  .....    

 static proptypes = {
  clientId: PropTypes.string.isRequired
 };

.......    
}

问题:

在上面的场景中,HOC是否有可能在其参数中了解SubComponent的clientId属性,如果是这样,我怎样才能让HOC知道它的doSomething函数?

1 个答案:

答案 0 :(得分:0)

因为它真的是接收道具的HOC(或者更确切地说是函数返回的组件),所以你可以使用this.props访问它们:

const temp = this.props.clientId;