关于vue开发中,高德地图有时不显示的问题

场景1:在弹出框中初始化地图

先设置

this.dialogVisible = true;

然后再用nextTick初始化地图

this.$nextTick(() => {

this.initAmap();

});

场景2:点击tab页路由回退,导致高德地图不初始化的问题

解决方法:

通过$refs的方式获取map的容器dom,而不是id标签

<div ref="mapContainer"></div>

var map = new AMap.Map(this.$refs.mapContainer, {

zoom: 13, // 级别

center: [114.412619, 23.066318], // 地图中心的经纬度

});

场景3:当一个页面中有多个地方使用高德地图时,若通过id进行渲染,则各个容器的id不能重复,否则也会出现bug

相关推荐
Watermelo617几秒前
【前端实战】从 try-catch 回调到链式调用:一种更优雅的 async/await 错误处理方案
前端·javascript·网络·vue.js·算法·vue·用户体验
木易 士心1 分钟前
NestJS 核心揭秘:InstanceWrapper 的艺术与前端缓存新思路
前端·缓存
古韵2 分钟前
当 API 文档走进编辑器会怎样?
vue.js·react.js·node.js
IT_陈寒5 分钟前
SpringBoot 3.x性能优化实战:这5个配置让你的应用启动速度提升50%
前端·人工智能·后端
奶昔不会射手5 分钟前
css之如何获取祖先元素的宽高
前端·css
serve the people6 分钟前
滑块验证完整实现教程(前端 + 后端 + Nginx 集成)
运维·前端·nginx
yivifu7 分钟前
Excel中Lookup函数实现临界点归入下一个等级的方法
java·前端·excel
Wiktok8 分钟前
Tailwind CSS 自适应相关
前端·css·tailwindcss
LYFlied9 分钟前
【一句话概括】Vue2 和 Vue3 的 diff 算法区别
前端·vue.js·算法·diff
亮子AI13 分钟前
Chrome 和 Edge 生成的 fingerprint 是一样的?
前端·chrome·edge