vue 页面或者弹窗使用 高德地图组件 map组件 不能加载,或者第二次才能加载问题

        最近在项目中大量使用地图功能,因此使用了高德地图组件,因为之前没使用过,因此也踩了一些坑,花了一些时间,特此记录下来。

首先,使用地图组件,一定要设置map绑定的div的样式,为其设置宽高,不然map不能正常加载

其次,新上手使用map的(比如我)尽量每个地图功能都创建一个map对象,不然很可能复用时加载异常

再次,map加载需要考虑vue的生命周期,有时候map初次加载不成功,再次进入时发现却成功了,往往就是初始化map的顺序出了问题这里注意如果能先获取坐标,就先获取坐标然后再初始化地图,如果有调取后台api,就在api回调then中初始化,或者正常情况下如果不能加载,就放在this.$nextTick()中使用

还有就是要注意this的指向问题,如果console打印某些属性或者方法不能使用,很可能就是this指向问题,可能指向了方法调用本身而不是vue,可以在初始时使用_this = this,然后使用_this. 解决或者直接使用箭头表达式

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值