I've got this simple React component:
import {PropTypes} from 'react'; import Column from './Column'; export default function ColumnContainer({children}) { return ( <div className="cr-column-container">{children}</div> ); } let ColumnType = PropTypes.instanceOf(Column); ColumnContainer.propTypes = { children: PropTypes.oneOfType([ ColumnType, PropTypes.arrayOf(ColumnType), ]).isRequired, }; Which I use like this:
render() { return ( <ColumnContainer> <Column> *snip* </Column> </ColumnContainer> ); } But it's failing prop-type validation:
Warning: Failed prop type: Invalid prop `children` supplied to `ColumnContainer`. in ColumnContainer (created by ExampleContainer) in ExampleContainer Why is that? I've only used Columns inside of the ColumnContainer. Does PropTypes.instanceOf(Column) not work like I expect? How am I supposed to specify that ColumnContainer will only accept children of type Column?