uniapp使用地图

使用内置地图查看定位

效果

实现

<!-- 方法一:点击小程序map地图插件跳转到app中打开 -->
<map @click="mapFun" class='map' :latitude="latitude" :longitude="longitude" :markers="covers" /><!-- 方法二:点击button等按钮打开 -->
<button type="default" @click="mapFun">唤醒题图</button><!-- js中 -->
// 高德地图、腾讯、百度等地图中打开
data(){return{latitude: 39.909,longitude: 116.39742,covers: [{latitude: 39.909,longitude: 116.39742,width:'50rpx'}]}
},
methods:{mapFun() {uni.openLocation({latitude: this.latitude,, //纬度 - 目的地/坐标点longitude: this.longitude,, //经度 - 目的地/坐标点name: "电脑城",address: "重庆九龙坡"});}
}

<map>注意事项:
使用map地图插件时,具体注意事项及使用方法,参考 uniapp地图组件官网:
https://uniapp.dcloud.net.cn/component/map.html#map-地图组件
1. 组件的宽/高推荐写直接量,比如:750rpx,不要设置百分比值。
2.谷歌地图使用 wgs84 坐标,其他地图使用 gcj02 坐标,用错坐标类型会显示偏移。
3.App平台 layer-style 属性需要在地图服务商后台创建,值设置为高德后台申请的字符串https://developer.amap.com/api/android-sdk/guide/create-map/custom
4. 组件在不同平台的底层引擎是不同的:微信小程序为腾讯地图;H5为腾讯地图或谷歌地图;App、支付宝(中国大陆地区版本)小程序为高德地图;百度小程序、快应用为百度地图。app-vue也可以使用百度地图,在manifest中配置,打包后生效,但app-nvue只支持高德地图。另外选择地图、查看地图位置的API也仅支持高德地图。App端如无特殊必要,建议使用高德地图。
5.map 组件默认的api是参考微信小程序的,如需要使用plus.map,可以通过$getAppMap获取原生地图对象。
注意nvue的map组件不是plus.map对象,无法使用$getAppMap
https://uniapp.dcloud.net.cn/api/location/map.html
6. 组件默认为国测局坐标,调用 uni.getLocation 返回结果传递给 组件时,需指定 type 为 gcj02。

uniapp打开第三方地图

打开第三方地图应用需传入 latitude 和 longitude ,name
直接上代码!!!

toMapAPP(latitude, longitude, name) {let url = "";if (plus.os.name == "Android") { //判断是安卓端plus.nativeUI.actionSheet({ //选择菜单title: "选择地图应用",cancel: "取消",buttons: [{title: "腾讯地图"}, {title: "百度地图"}, {title: "高德地图"}],}, function(e) {console.log(e);switch (e.index) {//下面是拼接url,不同系统以及不同地图都有不同的拼接字段case 1://注意referer=xxx的xxx替换成你在腾讯地图开发平台申请的keyurl=`qqmap://map/geocodercoord=${latitude},${longitude}&referer=I47BZ-QPEWO-HIPWK-SA5DW-F6ZRE-O2FCO`;break;case 2:url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&coord_type=gcj02&src=andr.baidu.openAPIdemo`;break;case 3:url = `androidamap://viewMap?sourceApplication=appname&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`;break;default:break;}if (url != "") {url = encodeURI(url);//plus.runtime.openURL(url,function(e){})调起手机APP应用plus.runtime.openURL(url, function(e) {plus.nativeUI.alert("本机未安装指定的地图应用");});}})} else {// iOS上获取本机是否安装了百度高德地图,需要在manifest里配置// 在manifest.json文件app-plus->distribute->apple->urlschemewhitelist节点下添加//(如urlschemewhitelist:["iosamap","baidumap"])//uniapp 里配置//"ios" : {// "urlschemewhitelist":["iosamap","baidumap"]// },plus.nativeUI.actionSheet({title: "选择地图应用",cancel: "取消",buttons: [{title: "腾讯地图"}, {title: "百度地图"}, {title: "高德地图"}]}, function(e) {switch (e.index) {case 1:url = `qqmap://map/geocoder?coord=${latitude},${longitude}&referer=I47BZ-QPEWO-HIPWK-SA5DW-F6ZRE-O2FCO`;break;case 2:url =                             `baidumap://map/markerlocation=${latitude},${longitude}&title=${name}&content=${name}&src=ios.baidu.openAPIdemo&coord_type=gcj02`;break;case 3:url = `iosamap://viewMap?sourceApplication=applicationName&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`;break;default:break;}if (url != "") {url = encodeURI(url);plus.runtime.openURL(url, function(e) {plus.nativeUI.alert("本机未安装指定的地图应用");});}})}
}

其他使用可参考
https://blog.csdn.net/m0_56344602/article/details/123640217?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167214148016800186599855%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=167214148016800186599855&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-1-123640217-null-null.142^v68^wechat,201^v4^add_ask,213^v2^t3_control2&utm_term=uniapp%E5%9C%B0%E5%9B%BE&spm=1018.2226.3001.4187

https://blog.csdn.net/weixin_50343572/article/details/116483501?ops_request_misc=&request_id=&biz_id=102&utm_term=uniapp%E5%9C%B0%E5%9B%BE&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-116483501.nonecase&spm=1018.2226.3001.4187

uniapp使用地图相关推荐

  1. uniapp打开地图选择位置(查看位置)详解

    开发小程序的时候,有时候要做打开地图选择位置和打开地图查看当前位置.我前段时间刚做的时候也是一脸懵逼(新手上路). 我是用的uniapp做的,配置方法和原生小程序的配置方法不太一样.下面就是我写的配置 ...

  2. uniapp h5地图导航

    uniapp h5地图导航 view部分 <label @click="daohang">导航</label> js部分 export default {d ...

  3. uni-app实现地图车辆移动轨迹回放

    uni-app实现地图车辆移动轨迹回放 <template><view><view><map id="Map" style="w ...

  4. uniapp调用地图,进行位置查询,标记定位

    这周开会又新增一个小功能,就是需要通过身份证号/手机号在地图查询(后台返回经纬度),标记位置,想着挺麻烦,做的时候发现没啥技术,分享给大家. <map class="map" ...

  5. uni-app 引用地图

    插件市场引用为 https://ext.dcloud.net.cn/plugin?id=615 插件引用后进行了部分修改 目录 index页面 组件页面  [创建nvue文件] 生成高德地图Key i ...

  6. uniapp调用地图并导航

    需求: 点击立即前往弹出腾讯地图,点击右下角(如下图),可选择腾讯.高德地图并进行导航. 1.uniapp中manifest.json配置文件开启获取位置权限来获取当前位置 2.需要开通(一般用户是小 ...

  7. uniapp之地图选点插件

    使用此插件前提: 已经有key值,申请方法请详见微信小程序获取地理位置信息_夏-小-舟的博客-CSDN博客 首先, 先找到地图选点插件 2.插件申请接入(直接点击"点击浏览插件最新版本&qu ...

  8. uni-app高德地图配置

    自定义基座里 地图是不能直接使用的,需要在manifest.json的"App模块配置"中勾选"Maps(地图)",并根据项目实际情况勾选使用的三方地图SDK, ...

  9. uni-App获取地图address与高德地图API配合

    现在使用获取地图,不需要再去安装sdk,只需要和我一样执行下方代码可以解决问题(这里会从先获取经纬度,再到经纬度转成具体的地址,最后补充定位当前位置),并且当中会提及到很多,自己开发的时候踩过的坑,谢 ...

最新文章

  1. linux下的daemon进程
  2. python有序字典_python 学习 有序字典
  3. 第二课时之python认识
  4. Spring Boot 注解大全,一键收藏!回城路上复习!
  5. servlet向ajax传递list数据类型,ajax向servlet传递array数据类型
  6. VR+监狱,分分钟让犯罪分子重新做人
  7. HTML form的一些属性(第一版)
  8. 转型从思维习惯的转变开始
  9. java 判断二级网址_【Java】利用正則表達式推断是否为网址
  10. Eclipse常用插件之Top10
  11. Oracle下Latch详细介绍
  12. 何为仿射变换(Affine Transformation)
  13. 计算机设备管理器驱动,设备管理器安装驱动程序的详细教程
  14. 业务实战记录(1):帮业务人员做道Excel题
  15. 写一个python定时发送消息的脚本——每天跟你女盆友说晚安
  16. android metal api,Metal简述与常用API
  17. 手写数据库查询框架ORM
  18. PAT A1153 Decode Registration Card of PAT ——凭谁问,廉颇老矣,尚能饭否
  19. Linux shell test命令用法详解
  20. 南京理工计算机专业复试科目,南京理工大学计算机考研复试全攻略

热门文章

  1. IOS开发:尺寸和适配
  2. 今天为什么还要阅读经典
  3. 6.3 收敛性与稳定性
  4. BZOJ4887:[TJOI2017]可乐(矩阵乘法)
  5. C#中 var是个什么意思?
  6. 安徽省计算机一级证书领取时间表,2020年安徽计算机软件水平考试合格证书领取通知...
  7. 百胜软件黄飞:携手阿里云,用双中台驱动新零售
  8. 用图带你了解大数据框架架构之DophinScheduler
  9. 【LeetCode系列】最长回文子串(双指针中心扩散)与可怜的小猪(老鼠毒药问题)
  10. Deploying Kylix 3 Applications