微信小程序获取地理位置

要点:获取地理位置时,如果获取地理位置失败,有两种情况:

1、用户未给小程序授权地理位置信息

2、系统设置中-隐私选项地理位置未开启或系统未给微信授权地理位置信息

在获取地理位置信息失败后,判断用户是否有为小程序授权地理位置,如果未授权,则是第一种情况,打开地理位置授权即可;

但是进入了fail函数,并且已有地理位置授权,说明是第二种情况,需要用户在系统设置中打开定位和授权。代码如下:

      // 调用地理位置授权
    getLocation() {
        const that = this;
        wx.getLocation({
            type: 'gcj02', // 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
            isHighAccuracy: true,
            success(res) {
                that.data.query.lat = res.latitude;
                that.data.query.lon = res.longitude;
                that.getData();
            },
            fail(err) {
                wx.getSetting({
                    success(res) {
                        if (!res.authSetting['scope.userLocation']) {
                            util.showToastTip('授权失败,请重新授权', 'none');
                            that.setData({
                                viewStatus: "noauth"
                            });
                        }else{
                            util.showToastTip('请在系统设置中打开定位服务并下拉刷新列表', 'none'); 
                        }
                    }
                })
            }
        });
    },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值