【黄啊码】微信小程序调用经纬度后弹窗失败
【摘要】
如果让你用微信小程序获取经纬度,然后在后台计算距离,返回数据
一般人的逻辑就是: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)