【黄啊码】微信小程序调用经纬度后弹窗失败
【摘要】
如果让你用微信小程序获取经纬度,然后在后台计算距离,返回数据
一般人的逻辑就是:getLocation之后直接request
然而,当你request后才发现,根本没有弹窗,what?为什么?
因为获取经纬度需要调用腾讯接口,接口的返回也需要时间,所以我们需要用Promise进行异步调用,接收返回值后才能request...
如果让你用微信小程序获取经纬度,然后在后台计算距离,返回数据
一般人的逻辑就是:getLocation之后直接request
然而,当你request后才发现,根本没有弹窗,what?为什么?
因为获取经纬度需要调用腾讯接口,接口的返回也需要时间,所以我们需要用Promise进行异步调用,接收返回值后才能request,例子如下,废话不多说!看啥?进来扫码,一起玩代码石墨文档是一款轻便、简洁的在线协作文档工具,PC端和移动端全覆盖,支持多人同时对文档编辑和评论,让你与他人轻松完成协作撰稿、方案讨论、会议记录和资料共享等工作。https://shimo.im/docs/8PGqp3cHtwVxcTPp
var p = new Promise(function (resolve, reject) {
wx.getLocation({
isHighAccuracy:true,
highAccuracyExpireTime:3000,
type:'gcz02',
success (res) {
let latitude=res.latitude;
let longitude=res.longitude;
resolve({latitude,longitude});
},fail(res){
let latitude='';
let longitude='';
resolve({latitude,longitude});
}
});
});
p.then(function (datas) {
wx.request({
url: config.api+'/api/XXX/XXXX',
method:'POST',
data: {
latitude:datas.latitude,
longitude:datas.longitude
},
header: { 'content-type': 'application/json' // 默认值
},
success (res) {
if(res.data.code == 0){
wx.showModal({
title: '提示',
content: res.data.message,
})
}
else{
wx.showModal({
title: '提示',
content: res.data.message,
})
return false
}
}
})
})
},
文章来源: markwcm.blog.csdn.net,作者:黄啊码,版权归原作者所有,如需转载,请联系作者。
原文链接:markwcm.blog.csdn.net/article/details/122196958
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)