小程序云开发的问题(云函数在本地调试和云端表现不一致)解决方法

先说结论:这类问题大概率与异步执行有关。

问题表现:

本地调试结果符合预期,上传代码关闭本地执行后结果异常

问题定位:

在我的个案中,我是需要用到异步查询云数据库,并根据结果查询结果返回的,一开始我的代码如下

const cloud = require('wx-server-sdk')
cloud.init({
  // API 调用都保持和云函数当前所在环境一致
  env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database();


// 云函数入口函数
exports.main = async (event, context) => {
 var canMatch=false;
 const wxContext = cloud.getWXContext()
 db.collection('relation').where({
     shareid: event.shareid
   }).get().then(
     res=>{
       console.log('res is ',res)
      if(res.data.length==0){
         console.log('check point 2')               
         db.collection('relation').where({
           shareid: event.openid
         }).get().then(
           res => {
             if (res.data.length == 0) {
               console.log('check point 3')
              
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值