有没有办法在地图上的反应传单中显示下拉菜单
Is there a way to show drop down in react leaflet on the map
我正在尝试在 React 传单地图上显示一个简单的下拉菜单,以显示某些数据的标记。一旦用户从下拉列表中选择了一个选项,我希望一些数据显示在地图上。目前我还没有找到一种直接的方法来做到这一点。或任何在线示例代码。
我已经尝试了一个模块 react-leaflet-control,但由于一些打字稿错误,我假设它无法正常工作。我曾尝试使用 react-leaflet LayerControl.Overlay
来显示复选框而不是下拉菜单,但我认为这不是我需要的,而且它对我的情况并不有用。任何建议和示例代码将不胜感激。
你试过LayersControl
了吗?您可以找到一些文档 here
这是它的工作原理。您定义一个 LayersControl
标签,并可以将 Overlay
标签添加到您的 GeoJSON 数据中。每个 Overlay
标签将是一个不同的层。所以你可以有多个 GeoJSON 层。每一层都是下拉菜单中的一个项目。
<LayersControl position="topright" collapsed={false}>
{this.state.layersName.map((layerName, i) => {
return (
<Overlay key={i} name={`${layerName}`} checked>
<GeoJSON
data={this.state.layersData[i]}
/>
</Overlay>
)
})}
</LayersControl>
我正在尝试在 React 传单地图上显示一个简单的下拉菜单,以显示某些数据的标记。一旦用户从下拉列表中选择了一个选项,我希望一些数据显示在地图上。目前我还没有找到一种直接的方法来做到这一点。或任何在线示例代码。
我已经尝试了一个模块 react-leaflet-control,但由于一些打字稿错误,我假设它无法正常工作。我曾尝试使用 react-leaflet LayerControl.Overlay
来显示复选框而不是下拉菜单,但我认为这不是我需要的,而且它对我的情况并不有用。任何建议和示例代码将不胜感激。
你试过LayersControl
了吗?您可以找到一些文档 here
这是它的工作原理。您定义一个 LayersControl
标签,并可以将 Overlay
标签添加到您的 GeoJSON 数据中。每个 Overlay
标签将是一个不同的层。所以你可以有多个 GeoJSON 层。每一层都是下拉菜单中的一个项目。
<LayersControl position="topright" collapsed={false}>
{this.state.layersName.map((layerName, i) => {
return (
<Overlay key={i} name={`${layerName}`} checked>
<GeoJSON
data={this.state.layersData[i]}
/>
</Overlay>
)
})}
</LayersControl>