小程序开发API之位置openLocation、getLocation、chooseLocation

使用下面API的前提是声明用途如下

App.json

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

效果展示


wx.openLocation(Object object)

使用微信内置地图查看位置
参数Object object小程序开发API之位置openLocation、getLocation、chooseLocation_第1张图片

wx.getLocation(Object object)

获取当前的地理位置、速度。当用户离开小程序后,此接口无法调用。
调用前需要 用户授权 scope.userLocation
参数Object object小程序开发API之位置openLocation、getLocation、chooseLocation_第2张图片

object.success 回调函数 参数 res小程序开发API之位置openLocation、getLocation、chooseLocation_第3张图片

  • 工具中定位模拟使用IP定位,可能会有一定误差。且工具目前仅支持 gcj02 坐标。
  • 使用第三方服务进行逆地址解析时,请确认第三方服务默认的坐标系,正确进行坐标转换。

wx.chooseLocation(Object object)

打开地图选择位置。调用前需要 用户授权 scope.userLocation
参数Object object小程序开发API之位置openLocation、getLocation、chooseLocation_第4张图片

object.success 回调函数参数res小程序开发API之位置openLocation、getLocation、chooseLocation_第5张图片

示例
效果展示


代码
index.wxml






纬度:{{latitude}} 纬度:{{longitude}} 速度:{{speed}} 高度:{{accuracy}}

纬度:{{latitude2}} 纬度:{{longitude2}} 位置名称:{{name}} 详细地址:{{address}}

index.wxss

/**index.wxss**/
button{
  margin: 20rpx;
  font-size: 30rpx;
}

index.js

//index.js
Page({
  data: {
    
  },
  //使用微信内置地图查看位置
  btnClick1:function(){
    wx.getLocation({
      type: 'gcj02', // 返回可以用于wx.openLocation的经纬度
      success(res) {
        const latitude = res.latitude
        const longitude = res.longitude
        wx.openLocation({
          latitude,
          longitude,
          scale: 18
        })
      }
    })
  },
  //获取当前的地理位置、速度。
  btnClick2: function () {
    var that = this
    wx.getLocation({
      type: 'wgs84',
      success(res) {
        console.log(res)
        that.setData({
          latitude: res.latitude,
          longitude: res.longitude,
          speed: res.speed,
          accuracy: res.accuracy
        })
      }
    })

  },
  // 打开地图选择位置
  btnClick3: function () {
    var that = this
    wx.chooseLocation({
      success: function (res) {
        console.log(res)
        that.setData({
          latitude2: res.latitude,
          longitude2: res.longitude,
          name: res.name,
          address: res.address
        })
        
      },
      fail: function () {
        // fail
      },
      complete: function () {
        // complete
      }
    })
  },
  onLoad: function (options) {
    
  },
})





你可能感兴趣的:(ONE,PIECE--小程序,ONE,PIECE--小程序,小程序)