美文网首页
9.地图定位,当前到店铺距离

9.地图定位,当前到店铺距离

作者: 赵羽珩 | 来源:发表于2019-08-20 22:48 被阅读0次

    1.wx.getLocation文档

    用小程序自带的API接口wx.getLocation获取当前的地理位置、速度。当用户离开小程序后,此接口无法调用。

      onLoad: function (options) {
        wx.getLocation({
            success: function(res) {
                console.log(res.latitude, res.longitude)
            },
        })
      },
    

    2.小程序接口权限相关设置,错误

    permission位置相关权限声明文档

    image.png

    复制下载这段到App.json

      "permission": {
        "scope.userLocation": {
          "desc": "你的位置信息将用于小程序位置接口的效果展示"
        }
      }
    
    permission-desc.496b775d.jpg

    App.json添加了permission,获取到了经纬度

    image.png

    3.腾讯地图

    image.png

    WebService API* 逆地址解析(坐标位置描述)

    使用腾讯地图获取当前用户地址,

      onLoad: function (options) {
        wx.getLocation({
            success: function(res) {
                console.log(res.latitude, res.longitude)
                wx.request({
                    url: 'https://apis.map.qq.com/ws/geocoder/v1',
                    data: {
                        location: `${res.latitude},${res.longitude}`,
                        key: "PRVBZ-SXNKF-VWSJG-NOTTL-BW4D7-XBBQZ"
                    },
                    success: res => {
                        console.log(res.data.result.address)
                    }
                })
            },
        })
      },
    

    报错未开启WebserviceAPI

    image.png

    解决方案:进入设置,勾选WebserviceAPI

    image.png

    勾选WebserviceAPI

    image.png

    成功之后地址不准确

    image.png image.png
    Page({
    
      /**
       * 页面的初始数据
       */
      data: {
          address: [],
      },
    
      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
        wx.getLocation({
            type: 'gcj02',
            success: (res) => {
                console.log(res.latitude)
                wx.request({
                    url: 'https://apis.map.qq.com/ws/geocoder/v1/',
                    data: {
                        location: `${res.latitude},${res.longitude}`,
                        key: 'PRVBZ-SXNKF-VWSJG-NOTTL-BW4D7-XBBQZ'
                    },
                    success: (res) => {
                        console.log(res)
    
                        this.setData({
                            address: res.data.result.formatted_addresses.recommend
                        })
                    }
                })
            },
        })
      },
    })
    

    最后用小程序真机调试,获取详细地址返回wxml页面


    获取当前位置到北京长楹天街de距离

    Page({
    
      /**
       * 页面的初始数据
       */
      data: {
          address: [],
      },
    
      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
        wx.getLocation({
            type: 'gcj02',
            success: (res) => {
                // console.log(res.latitude, res.longitude)
                wx.request({
                    url: 'https://apis.map.qq.com/ws/geocoder/v1/',
                    data: {
                        address: `北京长楹天街`,
                        key: 'PRVBZ-SXNKF-VWSJG-NOTTL-BW4D7-XBBQZ'
                    },
                    success: (res1) => {
                        // console.log(res1.data.result.location.lat, res1.data.result.location.lng)
                        wx.request({
                            url: 'https://apis.map.qq.com/ws/distance/v1/',
                            data: {
                                mode: "walking",
                                from: `${res.latitude},${res.longitude}`,
                                to: `${res1.data.result.location.lat},${res1.data.result.location.lng}`,
                                key: 'PRVBZ-SXNKF-VWSJG-NOTTL-BW4D7-XBBQZ'
                            },
                            success: res2 => {
                                console.log(res2.data.result.elements[0].distance)
                                this.setData({
                                    address: res2.data.result.elements[0].distance
                                })
                            }
                        })
                    }
                })
            },
        })
      },
    })
    

    相关文章

      网友评论

          本文标题:9.地图定位,当前到店铺距离

          本文链接:https://www.haomeiwen.com/subject/cjufsctx.html