// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const userInfo = db.collection('userInfo')
// 云函数入口函数
exports.main = async (event, context) => {
const wxContext = cloud.getWXContext()
//通过openid查询是否存在用户
userInfo.where({
_openid: wxContext.OPENID
}) .count().then(res =>{
if(res.total==0){
return true
}
else{
return false
}
})
}
d 返回的result 一直是null
return await userInfo.where() 这么写
简单解释一下原因,main函数可以接受两种返回值,直接return xxx(同步调用),或者return 一个Promise(异步调用)。
数据库请求默认是返回promise(异步),但也支持await同步,所以如果直接return的话需要await做同步,如果不想用await,可以用return new Promise((resolve,reject)=>{resolve(YOUR RESULT)})这种方式处理。
供参考
可以不写return 但是await一定要