uniapp地图 监听滑动后事件,根据中心位置的经纬度,重新查询数据
第一个问题:如何监听到地图移动后的事件。可以使用:@regionchange事件虽然上面没有写nvue和vue可用,但是测试了一波,是可以的手机安卓和IOS系统的可能会发生的事情,这个大佬写的可以,我没有深入那么多,地址:https://ask.dcloud.net.cn/article/38699然后我们只需要再结束移动的监听中,获取到当前中心点的位置,第二个问题出现了,如何获取当前中心点位置。
·
第一个问题:如何监听到地图移动后的事件。
可以使用:@regionchange事件
虽然上面没有写nvue和vue可用,但是测试了一波,是可以的
手机安卓和IOS系统的可能会发生的事情,这个大佬写的可以,我没有深入那么多,
地址:https://ask.dcloud.net.cn/article/38699
然后我们只需要再结束移动的监听中,获取到当前中心点的位置,第二个问题出现了,如何获取当前中心点位置。
第二个问题:如何获取当前中心点位置
查看uniapp所有关于地图的解释,我再API中找到一个方法,
根据描述和它带有的方法:
好,第二个问题好像也就解决了,最后:
<map id="map" ref="map" :style="{height:windowHeight+'px'}" :latitude="latitude" :longitude="longitude" :markers="markers"
:enable-rotate="false" @markertap="getMarkerTap" @regionchange="changeMap" @updated="onMapFinish"></map>
//滑动了地图
changeMap(e){
let type = '';
const { platform } = uni.getSystemInfoSync();
switch (platform) {
case 'android':
type = e.type;
break;
case 'ios':
type = e.detail.type;
break;
}
if (type === 'end') {
// 处理拖拽结束时的逻辑
console.log("结束了");
let mapCtx =uni.createMapContext('map',this);
mapCtx.getCenterLocation({
success:res=> {
console.log(res);
// 当前中心经纬度位置
this.latitude = res.latitude;
this.longitude =res.longitude;
}
})
}
},
更多推荐
已为社区贡献2条内容
所有评论(0)