请问各位大佬,发送请求从数据库获取数据,由于异步加载,我使用了回调函数,但是回调函数只有在回调时获取数据成功的情况下才有返回值,而在没有成功的时候就没有任何反应了,请问这个怎么解决,谢谢!
isHasRegistered: function(openid, suc) {
const db = wx.cloud.database()
var register_id = ‘’
db.collection(‘yjjFamilyUsers’).where({
_openid: openid
}).get({
success: res => {
console.log('res.data[0]._id: ', res.data[0]._id)
register_id = res.data[0]._id
suc(openid, register_id)
// 获取到了数据是可以返回结果的,但是获取不到数据跳到fail之后,函数没有任何反应,应该如何返回一个值呢?
},
fail: err => {
console.error(‘res.data[0]._id[数据库] [查询记录] 失败:’, err)
// 获取到了数据是可以返回结果的,但是获取不到数据跳到fail之后,函数没有任何反应,应该如何返回一个值呢?
}
})
// return _id == ‘’ ? false : true;
},
或者说,在没有获取到数据后,根本就不执行任何语句了,程序没有任何反应了,就好像卡在这里回调函数里面了
请问这个应该怎么办呢?谢谢
感觉微信小程序的异步加载有点难搞啊