微信小程序获取当前位置并自定义浮窗

火影  论坛元老 | 2024-8-24 20:17:20 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1015|帖子 1015|积分 3045

1、在腾讯地图api申请key(添加微信小程序的appid)。
每个Key逐日可以免费使用100次,凌驾次数后会导致地图不显示。可以多申请几个Key办理。
WebService API | 腾讯位置服务腾讯地图开放平台为各类应用厂商和开辟者提供基于腾讯地图的地理位置服务和办理方案;有针对Web应用的JavaScript API, 得当手机端Native APP的各种SDK, WebService接口和各类地图API等。
https://lbs.qq.com/service/webService/webServiceGuide/overview
2、 先创建应用 

3、 留意:域名白名单一定要填写,否则会导致地图不显示。


 4、在uniapp小程序文件重添加权限和腾讯地图的文件.因为微信需要授权位置

 5、设置地图浮窗(直接调用即可)
getLocation() {
                const vm = this
                vm.markers = []
                const qqmapsdk = new QQMapWX({
                    key: '你的key'
                });
                wx.getLocation({
                    type: 'wgs84',
                    isHighAccuracy: true,
                    success(res) {
                        qqmapsdk.reverseGeocoder({
                            location: {
                                latitude: res.latitude,
                                longitude: res.longitude
                            },
                            coord_type: 1,
                            get_poi: 1,
                            poi_options: 'policy=2;radius=600;page_size=20;page_index=1',
                            success: (r) => {
                                vm.latitude = r.result.location.lat,
                                    vm.longitude = r.result.location.lng
                                const makerObj = {
                                    iconPath: "图片地点",
                                    longitude: vm.longitude,
                                    latitude: vm.latitude,
                                    id: 0,
                                    width: 46,
                                    height: 56,
                                    callout: {
                                        content: '当前位置',
                                        color: '#ff0000',
                                        fontSize: 14,
                                        borderWidth: 2,
                                        borderRadius: 10,
                                        borderColor: '#000000',
                                        bgColor: '#fff',
                                        padding: 5,
                                        display: 'ALWAYS',
                                        textAlign: 'center'
                                    },
                                }
                                vm.markers.push(makerObj)
                            },
                            fail: function(res) {}
                        });
                    }
                });
            },
6、地图展示
<map id="myMap" :markers="markers" style="width:100%;height:90%;"
            :longitude="longitude" :latitude="latitude" show-location scale="18" @markertap="markertap">
        </map>

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

火影

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表