В соответствии с react docs, если компонент имеет несколько дочерних элементов, this.props.children должен быть массивом.React props.children не является массивом
Я следующий компонент:
export class Two extends React.Component {
componentDidMount() {
console.log(Array.isArray(this.props.children)); // false
}
render() {
return(
<div>
{this.props.children}
</div>
);
}
};
Что я прохожу детей в метод другого компонента визуализации():
<Two>
<Img src="/photos/tomato.jpg"/>
<Img src="/photos/tomato.jpg"/>
</Two>
Почему this.props.children не массив? Что еще более важно, как я могу заставить его быть одним?
Также в соответствии с [документы] (https://facebook.github.io/react/docs/top-level -api.html # react.children), дети - непрозрачная структура данных. –
Что вам нужно делать с 'this.props.children'? Если вы хотите итерировать всех детей, чем у вас есть инструменты, например, в [React Children utilities] (https://facebook.github.io/react/docs/top-level-api.html#react.children). –
Это потому, что Img капитализируется? –