uni-app map组件里的@tap事件获取不到经纬度
uni-app map组件里的@tap事件获取不到经纬度
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | Windows 10 企业版 版本号22H2 | HBuilderX |
产品分类:
uniapp/H5
浏览器平台:
Edge
浏览器版本:
141.0.3537.71
bug描述:
map组件里的[@tap](/user/tap)事件获取不到经纬度

更多关于uni-app map组件里的@tap事件获取不到经纬度的实战教程也可以访问 https://www.itying.com/category-93-b0.html
hello , 注意看文档:App-nvue、微信小程序2.9支持返回经纬度
更多关于uni-app map组件里的@tap事件获取不到经纬度的实战教程也可以访问 https://www.itying.com/category-93-b0.html
大神你好,那h5端该怎么点击地图获取经纬度呢
在uni-app的map组件中,@tap事件确实无法直接获取经纬度信息。根据官方文档,map组件提供了专门的事件@regionchange用于监听地图区域变化,而点击事件返回的是屏幕坐标而非地理坐标。
若需要获取点击位置的经纬度,建议使用以下替代方案:
-
使用
@markertap事件
当点击地图上的标记点时,可以通过@markertap事件的回调参数获取到标记点对应的经纬度信息。 -
调用地图API转换坐标
可通过uni.createMapContext获取地图实例,结合地图组件的getRegion或getCenterLocation方法获取当前视野的中心点坐标。若需将屏幕坐标转换为经纬度,需调用相应地图服务商(如高德、百度)的坐标转换接口。 -
H5端注意事项
在H5平台,部分地图功能可能受浏览器限制。建议在@tap事件中通过event对象尝试获取latitude和longitude字段,但需注意浏览器兼容性。
示例代码片段:
onMapTap(e) {
// H5端可尝试从事件参数中获取
console.log('点击事件参数:', e);
// 若无法直接获取,需通过其他事件或API间接实现
}

