原因

因为容器在隐藏和显示之间切换时,容器还没创建好,宽高为0,这时设置中心点就会是在左上角

解决

定时器setTimeout,延时设置中心点

setTimeout(() => {
      window.map.centerAndZoom(new BMap.Point(lng, lat), 15); // 初始化地图,设置中心点坐标和地图级
}, 300);

前后对比

修改前
修改后

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐