uniapp小程序地图监听缩放层级
功能需求是在地图上添加makers,但是就算缩放成最大层级,地图上还是会有那么一坨图标,看起来就很丑。。。
在官方看了文档只有监听地图视野移动的
只用拖动地图时才会触发。我也没找到官方能监听地图缩放的api所以只能用一个蠢方法去实现了。
首先获取地图对象的上下文,然后在data里复制。写一个定时器每500毫秒触发一次。地图对象有个getScale方法可以获取当前层级。
let _this=this
let mapContext = uni.createMapContext("map", this);
this.timer=setInterval(function(){
let scale= mapContext.getScale({
success(res) {
_this.zoom=res.scale
}
})
},500)
之后在watch里监听这个zoom层级,然后声明一个值作为makers是否显示的判断,比如我写的是地图放大到16以上才会显示
watch:{ zoom(newVal,oldVal){ let i=this.showMakerZoom //这是我在data里声明的缩放层级 这个i理解成16就行 if(newVal>=i&&oldVal
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。