swan.chooseLocation

解释: 打开地图选择位置。需要用户授权 scope.userLocation。使用该 API 需通过获取用户权限设置申请授权后方可对用户发起授权申请,可在需授权接口列表中查看相关错误码信息。

# 方法参数

Object object

# object参数说明

属性名 类型 必填 默认值 说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

# success 返回参数说明

参数 说明
name 位置名称
address 详细地址
latitude 纬度,浮点数,范围为-90~90,负数表示南纬。使用 gcj02 国测局坐标系,查询指定地点的经纬度方法
longitude 经度,浮点数,范围为-180~180,负数表示西经。使用 gcj02 国测局坐标系,查询指定地点的经纬度方法

# 示例

在开发者工具中预览效果

# 扫码体验

请使用百度APP扫码

# 图片示例

# 代码示例

  • 在 js 文件中
Page({
    chooseLocation() {
         swan.authorize({
            scope: 'scope.userLocation',
            success: res => {
                console.log(res);
            },
            fail: function () {
                swan.openSetting({})
            }
        });
        let that = this;
        swan.chooseLocation({
            success: res => {
                console.log('success', res);
                let longitude = 'E:' + that.formatLocation(res.longitude) + '′';
                let latitude =  'N:' + that.formatLocation(res.latitude) + '′';
                that.setData({
                    'name': res.name,
                    'address': res.address,
                    'longitude': longitude,
                    'latitude': latitude
                });
            },
            fail: err => {
                console.log('错误码:' + err.errCode);
                console.log('错误信息:' + err.errMsg);
            }
        });
    },
    formatLocation(data) {
        return data.toFixed(2).replace('.', '°');
    }
})