我正在实现需要访问要包装的组件的道具的HOC。这将以类似于react-redux在ownProps
和mapStateToProps
中实现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} />
}
}
};