Как описывает ошибка, FeatureGroup
ожидает, что единственный элемент является дочерним. В настоящее время у вас есть от одного до многих элементов с учетом Array.prototype.map
, который вы используете для обработки массива и генерации элементов. Вероятно, это исходит от prop-types на FeatureGroup
, которые указывают, сколько дочерних элементов разрешено. Это не редкость, такие элементы, как Provider
из react-redux
, ожидают одного дочернего элемента. Как минимум, оберните вывод Array.prototype.map
элементом:
<FeatureGroup>
<div>
{this.state.data.map((data) => {
return (
<GeoJSON
key={data.name}
data={data.geometry}
style={this.myStyle}
>
<Popup>{data.name}</Popup>
</GeoJSON>
);
})}
</div>
</FeatureGroup>
Или вы можете использовать React.Fragment :
<FeatureGroup>
<React.Fragment>
{this.state.data.map((data) => {
return (
<GeoJSON
key={data.name}
data={data.geometry}
style={this.myStyle}
>
<Popup>{data.name}</Popup>
</GeoJSON>
);
})}
</React.Fragment>
</FeatureGroup>
Надеюсь, это поможет!