0


【小程序地图】uniapp开发微信小程序,显示地图功能,且点击后打开高德或腾讯地图。

最开始遇到地图这块的时候,想的比较复杂。想到是不是需要引用高德或者百度地图api 之类的。
其实完全没必要,使用uniapp自带的方法

uni.openLocation

即可。
话不多说,完整代码、注释、以及开发中遇到的问题如下所示:

1、uniapp 打包成微信小程序后—配置app.json文件

//开发过程中,需要在unpackage>>dist>>dev>>mp-weixin>>app.json中加入如下配置
"permission":{"scope.userLocation":{"desc":"你的位置信息将用于小程序位置接口的效果展示"}}
//在manifest.json的源码视图中配置:配置appid和地理位置
"mp-weixin":{ /* 小程序特有相关 */
        "appid":"", //需要配置appid
        "setting":{"urlCheck":false},
        "usingComponents": true,
        "permission":{"scope.userLocation":{"desc":"你的位置信息将用于小程序位置接口的效果展示"}}}

2.页面具体代码:

<template><viewclass=""><viewclass="ditu"><mapstyle="width:100%;height:100%;":latitude="latitude":longitude="longitude":scale="scale":markers="marker"@markertap="toMap()"><!--此处踩坑问题1:
            @markertap 是点击地图上的标记点时 触发打开地图。
            @tap 是点击地图整体的时候 触发打开地图。
            --></map></view></view></template><script>exportdefault{data(){return{latitude:'',//纬度longitude:'',//经度marker:[{id:0,latitude:'',//纬度longitude:'',//经度// title: '山东某某有限公司', //标注点名alpha:1,//透明度}],scale:14,//地图缩放程度address:''}},methods:{//点击地图上的标记,打开手机内置地图toMap(){
                console.log('点击地图')
                uni.openLocation({latitude:Number(this.latitude),//要去的纬度-地址longitude:Number(this.longitude),//要去的经度-地址address:this.address,//要去的具体地址//此处踩坑的问题2://latitude 和 longitude的值一定要是number类型。//所以传递的时候需要使用Number将其转换一下。})},}}</script><stylescoped>.ditu{width: 100%;height: 565rpx;}</style>

3.开发完成~如下图所示:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.关于踩坑的两个问题:

①点击哪里可以触发地图?

@markertap

是点击地图上的标记点时 触发打开地图。

@tap

是点击地图整体的时候 触发打开地图。

在这里插入图片描述

②uni.openLocation 点击打开地图时没反应?
注意经纬度的数据类型:使用Number

在这里插入图片描述

ending~


本文转载自: https://blog.csdn.net/weixin_48596030/article/details/125404714
版权归原作者 小跳会Coding 所有, 如有侵权,请联系我们删除。

“【小程序地图】uniapp开发微信小程序,显示地图功能,且点击后打开高德或腾讯地图。”的评论:

还没有评论