Biorąc pod uwagę prosty komponent, który renderuje jego dzieci:
class ContainerComponent extends Component {
static propTypes = {
children: PropTypes.object.isRequired,
}
render() {
return (
<div>
{this.props.children}
</div>
);
}
}
export default ContainerComponent;
Pytanie: Jaki powinien być typ prop dla dzieci?
Gdy ustawię go jako obiekt, nie powiedzie się, gdy użyję komponentu z wieloma elementami potomnymi:
<ContainerComponent>
<div>1</div>
<div>2</div>
</ContainerComponent>
Ostrzeżenie: Niepowodzenie typu podpory: Nieprawidłowy
children
typ podporyarray
dostarczony doContainerComponent
, oczekiwanyobject
.
Jeśli ustawię go jako tablicę, zakończy się niepowodzeniem, jeśli dam mu tylko jedno dziecko, tj .:
<ContainerComponent>
<div>1</div>
</ContainerComponent>
Ostrzeżenie: Niepowodzenie typu rekwizytu: Niepoprawne obiekty potomne rekwizytów typu obiektu dostarczone do obiektu ContainerComponent, oczekiwana tablica.
Radzę, czy powinienem po prostu nie zawracać sobie głowy sprawdzaniem propTypes elementów potomnych?
node