原因uniapp map绑定的缩放等级,在鼠标或手指缩放后并没有更新值, 如果遇到需要修改缩放等级的情况会因为设置的值没改变导致地图没有更新

<map class="my_map" id="myMap"  :scale="mapScale"></map>

......
data() {
	return {
		mapScale: 16,
	}
}		

解决办法在需要设置前调取地图查询缩放等级方法,重新设置更新缩放等级后再设置需要的缩放等级就可以缩放了

// 一开始创建的地图对象

onReady() {
	this.mapCtx = uni.createMapContext("myMap")
},

//设置地图缩放等级
setScale(level){
	this.mapCtx.getScale({
		success: res=>{		
			console.log("缩放",res)
			this.mapScale = res.scale;
			this.$nextTick(()=>{
				this.mapScale = level
			})
		}
	})
},
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐