推荐答案
// www.javascriptcn.com code example
wx.getLocation({
type: 'wgs84',
success(res) {
const latitude = res.latitude
const longitude = res.longitude
console.log('纬度:', latitude)
console.log('经度:', longitude)
},
fail(err) {
console.error('获取地理位置失败:', err)
}
})本题详细解读
1. wx.getLocation 的基本用法
wx.getLocation 是微信小程序提供的一个 API,用于获取用户的地理位置信息。它返回的经纬度信息可以用于地图展示、位置服务等场景。
2. 参数说明
type: 指定返回的坐标类型,默认为
wgs84,表示返回全球通用的经纬度坐标。还可以设置为gcj02,表示返回国测局坐标系,适用于中国地图。success: 获取地理位置成功的回调函数。回调函数的参数
res包含以下属性:latitude: 纬度,浮点数,范围为 -90~90。longitude: 经度,浮点数,范围为 -180~180。speed: 速度,单位为米/秒(m/s)。accuracy: 位置的精确度,单位为米(m)。
fail: 获取地理位置失败的回调函数。回调函数的参数
err包含错误信息。
3. 注意事项
使用
wx.getLocation需要在小程序的app.json中配置permission字段,申请地理位置权限。{ "permission": { "scope.userLocation": { "desc": "你的位置信息将用于小程序位置接口的效果展示" } } }由于获取地理位置涉及用户隐私,建议在调用
wx.getLocation前,先通过wx.authorize请求用户授权。// www.javascriptcn.com code example wx.authorize({ scope: 'scope.userLocation', success() { // 用户已经同意小程序使用地理位置 wx.getLocation({ type: 'wgs84', success(res) { console.log('获取地理位置成功:', res) }, fail(err) { console.error('获取地理位置失败:', err) } }) }, fail() { console.error('用户拒绝授权地理位置') } })
4. 兼容性
wx.getLocation 在微信小程序基础库 1.0.0 及以上版本中支持,建议在使用前检查基础库版本,以确保兼容性。