【发布时间】:2021-04-22 03:00:56
【问题描述】:
我正在使用 React Leaflet。我有一个地图和一个包含名称和相应位置的数组。数组中的每个名称都是一个按钮。当我单击一个名称时,位置会发生变化,并且应该在地图中更新。这适用于标记,但不适用于地图的部分。如何更新地图的部分?
const data = [
{
name: 'John',
coordinates: {
langitude: '40.72260370101827',
latitude: '-73.99323791583221',
},
},
{
name: 'Bob',
coordinates: {
langitude: '40.72843542344666',
latitude: '-73.94860440141105',
},
},
{
name: 'Chris',
coordinates: {
langitude: '40.79159996340942',
latitude: '-73.94077957876242',
},
},
];
export default function Map(props) {
const { index, data } = props;
return (
<MapContainer
center={[
data[index].coordinates.langitude,
data[index].coordinates.latitude,
]}
zoom={16}
>
<TileLayer
attribution='© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
></TileLayer>
<Marker
position={[
data[index].coordinates.langitude,
data[index].coordinates.latitude,
]}
>
<Popup>{data[index].name}</Popup>
</Marker>
</MapContainer>
);
}
【问题讨论】:
标签: reactjs dictionary leaflet react-leaflet