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

微信小程序地图应用总结版

1.应用场景:展示公司位置,并打开第三方app(高德,腾讯)导航到目标位置。

(1)展示位置地图

uniapp官网提供了相关组件,uniapp-map组件icon-default.png?t=N7T8https://uniapp.dcloud.net.cn/component/map.html#

具体用法:

html结构

<map style="width: 100%; height: 300px;" :latitude="startposition.lat" :longitude="startposition.lng" :markers="covers" @markertap="openMap" @tap="openMap">
</map>

 data数据

              startposition: {lat: 32.631379,//维度lng: 116.833490,//经度},covers: [{id: 1,latitude: 32.631379,longitude: 116.833490,iconPath: "../../static/位置.png",width: '50rpx',height: '50rpx',label: {content: '位置',color: '#fff',fontSize: 12,borderRadius: 5,padding: 5,textAlign: 'center',bgColor: '#2979ff',},}],address:'定位中.....'

 (2)打开第三方软件

 js方法uni.openLocation()icon-default.png?t=N7T8https://uniapp.dcloud.net.cn/api/location/open-location.html#openlocation用于唤起第三方软件(真机测试有效)

			// 打开的点击事件, 传经纬度和地点名openMap() {// 打开第三方 (小程序)uni.openLocation({latitude: Number(this.startposition.lat),longitude: Number(this.startposition.lng),success: function() {console.log('success');},fail: (error) => {console.log(error);}});},

2.应用场景:软件初始定位

 uniapp提供的apiuni.getLocation(OBJECT)icon-default.png?t=N7T8https://uniapp.dcloud.net.cn/api/location/location.html在微信端只能获取到经纬度,无法获取到详细中文地址,所以官方推荐使用第三方库,这里我使用的是腾讯地图,简单方便。

(1)注册腾讯地图,申请key

打开微信小程序JavaScript SDK地址icon-default.png?t=N7T8https://lbs.qq.com/miniProgram/jsSdk/jsSdkGuide/jsSdkOverview,根据官网教程注册

 (2)实现初始化当前定位信息

html部分

<view>当前位置:{{address}}</view>

data数据

address:'定位中.....'

 函数部分

        import QQMapWX from '../tx/qqmap-wx-jssdk.js';onLoad() {// 实例化API核心类let qqmapsdk = new QQMapWX({key: '你自己获取到的KEY'});qqmapsdk.reverseGeocoder({success: (res)=> {console.log(res);this.address=res.result.address}})},

注意import引入的路径为你下载的js文件路径

3.当前定位不准确或者需要重新选择定位位置,如改变收获地址等...

 实现该功能异常简单,直接使用uniapp提供的方法uni.chooseLocation(OBJECT)icon-default.png?t=N7T8https://uniapp.dcloud.net.cn/api/location/location.html#chooselocation

实例代码:

uni.chooseLocation({success: function (res) {console.log('位置名称:' + res.name);console.log('详细地址:' + res.address);console.log('纬度:' + res.latitude);console.log('经度:' + res.longitude);}
});

4.开启定位需要的配置

manifest.json需要在mp-weixi中添加代码

		"permission": {"scope.userLocation": {"desc": "位置信息效果展示"}},"requiredPrivateInfos": ["chooseLocation", "getLocation"]

 也可以在配置中更改

http://www.lryc.cn/news/156115.html

相关文章:

  • 分支创建查看切换
  • 参编三大金融国标,奇富科技以技术促行业规范化演进
  • 芯片开发之难如何破解?龙智诚邀您前往DR IP-SoC China 2023 Day
  • Gof23设计模式之策略模式
  • SAP 物料主数据屏幕增强
  • 数据库-索引
  • Excel·VBA二维数组组合函数的应用实例
  • hive anti join 的几种写法
  • 使用Android原生制作毛玻璃效果图片
  • 软件设计的七大原则
  • Windows下安装配置Nginx
  • 数据结构类型
  • WPF元素绑定
  • centos编译升级cmake,痛苦的Linux小白
  • Unity资源无法下载 反复提示需同意Terms of Service和EULA 同意后无效的解决方案
  • 记录--vue 拉伸指令
  • 前端缓存方法有哪些?cookie有哪些属性?
  • 在PHP8中遍历数组-PHP8知识详解
  • 代码随想录算法训练营之JAVA|第四十三天|139. 单词拆分
  • 解决VUE3项目部署后存在缓存页面不更新的问题
  • 私募证券基金动态-23年8月报
  • Qt/C++音视频开发49-推流到各种流媒体服务程序
  • 深度学习学习笔记——解决过拟合问题的方法:权重衰减和暂退法,与正则化之间的关系
  • 【Leetcode Sheet】Weekly Practice 5
  • STM32 SPI对存储芯片发送写是能命令后一直忙等待
  • MySql学习笔记01——SQL的相关术语
  • SpringMVC入门指南
  • mysql忘记root密码如何解决?
  • ChatGPT可以生成Windows密钥
  • jupyter notebook内核启动报错:ImportError: DLL load failed while importing _device