假设我希望我的组件接受React.Component
类型的属性
const MyComponent = ({ child: Child }) =>
<div>
<Child {...childProps} />
</div>
MyComponent.propTypes = {
child: PropTypes.[???].isRequired
}
React.Component
中是否可以使用任何prop-types
验证器?
编辑:我尝试使用
PropTypes.element
,但出现错误Failed prop type: Invalid prop 'el' of type 'function' supplied to 'Test', expected a single ReactElement.
https://codesandbox.io/s/qk0jyq13yj
edit2 :我刚刚在material-ui they have custom validation
中找到了
答案 0 :(得分:1)
使用element
属性
MyComponent.propTypes = {
child: PropTypes.element.isRequired
}
或instanceOf
MyComponent.propTypes = {
child: PropTypes.instanceOf(ReactComponentName).isRequired
}