uniapp小程序地图监听缩放层级

03-10 1418阅读

        功能需求是在地图上添加makers,但是就算缩放成最大层级,地图上还是会有那么一坨图标,看起来就很丑。。。

        在官方看了文档只有监听地图视野移动的

uniapp小程序地图监听缩放层级

 只用拖动地图时才会触发。我也没找到官方能监听地图缩放的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
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]