vue+leaflet绘制街道地图,并在上面显示站点标记。

从0开始。

记录一下完成过程中遇到的问题及解决方法

1、离线显示地图

已完成。

方案就是下载瓦片地图到本地或者服务器上,使用路径访问图片/map/{z}/{x}/{y}/tile.png

2、在地图上显示标记。(单一标记,且默认打开提示框)

复制代码
const icon = L.icon({
     iconUrl: require('../../../assets/erp/weizhi.png'),// marker图片地址
     iconSize: [15, 20]// marker宽高
})
const marker = L.marker([item.lat, item.lng], { icon: icon, title: item.title })
.addTo(pointerLayer)
.bindPopup(item.title)
.openPopup()
复制代码

3、因为只需要显示某个地市的地图,下载的瓦片地图也只有这个范围,不加以限制,拖拽时会拖拽到灰色区域(表示图片加载失败)

所以需要限制拖拽区域。

复制代码
// 设置拖动范围
      var corner1 = L.latLng(30.750088420396953,120.23729165764759)
      var corner2 = L.latLng(28.304063924517305,123.03476722908898)
      var bounds = L.latLngBounds(corner1, corner2)// 构建视图限制范围
this.map = L.map(this.idName, {
  maxBounds: bounds,
})
复制代码

 

posted @   吾本人间一叶茶  阅读(552)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
Live2D
欢迎阅读『vue+leaflet绘制街道地图,并在上面显示站点标记。』

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示