我正在实现需要访问要包装的组件的道具的HOC。这将以类似于react-redux在ownPropsmapStateToProps中实现mapDispatchToProps的方式工作。


  注意:我正在寻找一种将道具传递到自定义HOC中的方法,而不是如何使用react-redux。我只提到react-redux来说明我的用例


我想做这样的事情:(请注意,此示例将不起作用)


const HOC = InnerComponent => {
  console.log(InnerComponent.props.SomeProp)
  return InnerComponent
}

最佳答案

传递给InnerComponent的道具首先作为this.props通过HOC。因此,如果您的HOC是类组件,那么您也应该可以访问传递到InnerComponent的道具。

const HOC = InnerComponent => {
    return class extends React.Component {
        render() {
            // You should see all props passed to InnerComponent here
            console.log(this.props);
            return <InnerComponent {...this.props} />
        }
    }
};

09-27 00:32