vue项目中 高德地图总是出不来的问题

创建地图是个很简单的API,但是地图时不时的出不来,这个问题就严重了,一时真查不出原因。
经过无数的测试,发现地图需要规矩化

问题

vue是单页面应用,两个id一样的map,会出现出不来的问题
具体为什么,暂时还不知道,根据这个规律,将所有的地图都规范化,就解决了地图经常出不来的问题

方法
  1. 每个页面的地图id要设置的不一样
<!--地图-->
<div id="carContainer"></div>
this.map = new AMap.Map('carContainer', {
   resizeEnable: true,
   zoom: 14,
   center:  [116.405467, 39.907761]
});
  1. 路由跳转时,要销毁地图
destroyed() {
    if(!!this.map){
        this.map.destroy();
    }
}
升级

如果还是不行,最后就是做地图缓存
每次出路由的时候不需要销毁地图,每次进来的时候,重新加载数据,重新给地图做标记(所以创建地图,和在地图上做标记分开成两个方法,并且每次做标记前都要清空地图上的所有标记clearMap()下)

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
要实现vue集成高德地图实现考勤打卡,首先需要在vue项目引入高德地图API。接下来,我们可以使用高德地图的地图组件来展示地图,并将地图与用户信息进行关联。 首先,我们需要在项目安装高德地图的JavaScript API,并在项目引入相关的库文件。 在vue的组件,我们可以通过创建地图容器元素来展示地图,然后使用高德地图的Map类来初始化地图。可以设置地图的心点、缩放级别、控件等属性。 为了实现考勤打卡功能,我们需要在地图上添加打卡点。可以使用标记(Marker)来表示打卡点,并给每个打卡点添加点击事件。 当用户点击地图上的打卡点时,可以弹出打卡窗口,显示用户的相关信息,例如姓名、工号等。可以通过自定义窗体(InfoWindow)来实现。 另外,为了保证用户只能在指定的区域进行打卡,可以使用高德地图的多边形(Polygon)工具来标记可打卡区域。在每次打卡时,可以使用高德地图的点位检索(PlaceSearch)功能来判断用户当前位置是否在可打卡区域内。 当用户点击打卡按钮时,可以触发相关的逻辑代码,例如获取用户位置信息、判断用户位置是否在可打卡区域内等。根据打卡结果,可以将相关信息保存到数据库,并给用户显示打卡成功或失败的提示。 总结起来,通过vue集成高德地图实现考勤打卡,我们可以使用高德地图的API来展示地图、添加打卡点、设置打卡区域等功能。通过与用户信息和数据库的交互,可以实现考勤打卡的功能需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值