当前位置: 首页 > news >正文

uniapp h5接入地图选点组件

uniapp h5接入地图选点组件

  • 1、申请腾讯地图key
  • 2、代码接入
    • 2.1入口页面 (pages/map/map)
      • template
      • script
    • 2.2选点页面(pages/map/mapselect/mapselect)
      • template
      • script

该内容只针对uniapp 打包h5接入地图选点组件做详细说明,如需详细的微信小程序接入地图选点插件,请查阅 uni-app/微信小程序接入腾讯位置服务地图选点插件

1、申请腾讯地图key

文档中提到需要一个地图key,首先登录腾讯位置服务控制台,点击左侧应用管理,创建应用,再添加key。
在这里插入图片描述
在这里插入图片描述
创建完key之后,要记得对key 做配额管理,不然在应用中,会提示获取消息列表失败

2、代码接入

2.1入口页面 (pages/map/map)

本页面为tabBar页面,若实际开发页面不同,则跳转方式自行调整
在这里插入图片描述

template

<template><view><button @click="open">打开地图选点</button><view v-if="info"><text>地址:{{info.poiaddress}}</text><text>坐标:{{info.latlng.lat}}, {{info.latlng.lng}}</text></view></view>
</template>

script

export default {data() {return {info: null}},methods: {show(data){console.log(data)this.info = data},open() {uni.navigateTo({url:'/pages/map/mapselect/mapselect'})}},onLoad(options) {console.log('加载监听获取经纬度的方法')uni.$on('loc',this.show)},onUnload(){console.log('卸载获取经纬度的方法')uni.$off('loc')}	}

2.2选点页面(pages/map/mapselect/mapselect)

在这里插入图片描述

template

<template><web-view :src="mapurl"></web-view>
</template>

script

<script>export default {data() {return {mapurl:''}},onLoad(option) {this.mapurl = 'https://apis.map.qq.com/tools/locpicker?search=1&type=1&key={申请过来的key}&referer=myapp'},onReady() {if (window.isListen) {return}window.addEventListener('message', function(event) {// 接收位置信息,用户选择确认位置点后选点组件会触发该事件,回传用户的位置信息var loc = event.data;if (loc && loc.module == 'locationPicker') { //防止其他应用也会向该页面post信息,需判断module是否为'locationPicker'console.log('location', loc);//将获取的值通过消息传回给父页面uni.$emit('loc',loc)uni.switchTab({url:"/pages/map/map?source=true"});}window.isListen = truewindow.removeEventListener('message', function() {}, true)}, false);},methods: {},}
</script>

相关文章:

  • 用 Deepseek 写的uniapp油耗计算器
  • CentOS 7 安装教程
  • VS-Code创建Vue3项目
  • 医院处方外流对接外部药房系统(合规python代码版)
  • ROS ROS2 机器人深度相机激光雷达多传感器标定工具箱
  • 编解码器vs容器
  • webpack理解与使用
  • 方德桌面操作系统V5.0-G23 vim无法复制粘贴内容
  • 李飞飞团队新作WorldScore:“世界生成”能力迎来统一评测,3D/4D/视频模型同台PK
  • 【论文精读】COLMAP-Free 3D Gaussian Splatting
  • [linux] vim 乱码
  • C++ 哈希表
  • Qt QML实现Windows桌面歌词动态播放效果
  • QtApplets-实现应用程序单例模式,防止重复运行
  • 2025年Q2(流动式)起重机司机考试题
  • 【Windows本地部署n8n工作流自动平台结合内网穿透远程在线访问】
  • Ubuntu利用docker搭建Java相关环境记录(二)
  • Vision Transformer项目分析与介绍
  • 压缩包网页预览(zip-html-preview)
  • Apache Atlas构建安装(Linux)
  • 李洋谈美国黑帮电影与黑帮文化
  • 秦洪看盘|风格有所转变,热钱回流高弹性品种
  • 布局50多个国家和地区,我国科技型企业孵化器数量全球第一
  • 丹麦外交大臣拉斯穆森将访华
  • 耗资10亿潮汕豪宅“英之园”将强拆?区政府:非法占用集体土地
  • 从“求生”到“生活”:医保纳入创新药让梗阻性肥厚型心肌病患者重拾生活掌控权