my.setlocatedcity(object object)
建议使用 choosecitytask 的 setlocatedcity 方法代替 my.setlocatedcity
主体: 企业支付宝小程序 、 个人支付宝小程序
相关文档: choosecitytask 、 choosecity 、 onlocatedcomplete
设置 my.choosecity 中定位城市的名称。
object object
查看示例
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
locatedcityname | string | - | 是 | 定位城市的名称 |
locatedcityid | string | - | 是 | 当前定位城市 id,通过 my.onlocatedcomplete 获取 |
locatedcityadcode | string | - | 否 | 定位城市的行政区划代码,默认为当前定位城市的行政区划代码 |
locatedcitypinyin | string | - | 否 | 定位城市的拼音,默认为当前定位城市的拼音 |
success | function | - | 否 | 调用成功的回调函数 |
fail | function | - | 否 | 调用失败的回调函数 |
complete | function | - | 否 | 调用结束的回调函数(调用成功、失败都会执行) |
success 回调函数
参数
object res
查看示例
属性 | 类型 | 描述 |
---|---|---|
locatedcityname | string | 定位城市的名称。与入参 locatedcityname 相同 |
fail 回调的参数为 object,error
属性为错误码,errormessage
属性为错误消息。
错误码 | 错误消息 | 凯发app官方网站的解决方案 |
---|---|---|
11 | 参数类型错误。 |
检查参数类型是否正确。 |
12 | 必填参数为空。 |
请确认参数 locatedcityid、locatedcityname 是否已填写。 |
13 | locatedcityid 不匹配。 |
请确保入参 locatedcityid 与 my.onlocatedcomplete |
my.setlocatedcity axml 代码
my.setlocatedcity js 代码
<button type="primary" ontap="choosecity">打开城市选择列表</button>
<button type="primary" ontap="setlocatedcity">修改定位城市名称</button>
page({
setlocatedcity() {
// 设置监听,获取 locatedcityid
my.onlocatedcomplete(res => {
// 设置 my.choosecity 中定位城市的名称
my.setlocatedcity({
locatedcityid: res.locatedcityid,
locatedcityname: '自定义',
success: res => {
console.log(res);
},
fail: error => {
console.log(error);
}
})
});
},
// 只有打开城市选择列表,才可以触发监听函数的回调事件
choosecity() {
my.choosecity({
showlocatedcity: true,
setlocatedcity: true,
success: (res) => {
console.log(res);
},
fail: (error) => {
console.log(error);
}
})
},
});
-
bug安卓客户端 10.3.90 之前的版本中未校验是否传入必填参数 locatedcityid。若没有传入 locatedcityid,虽然会执行 success 回调并返回
success: true
,但 api 无法修改定位城市名称。请仔细填写参数。