收藏
回答

云函数成功调用,但该调用函数无法返回值?

// 根据产品id查询订单, 返回订单中某个商品被记录次数
  getOrderById(id){
    var num = 0
    wx.cloud.callFunction({
      name"getProductNumFromOrder",
      data:{id: id},
      success:function(res){
        console.log("每个id res ==>",res)
        if(res.result.data != null){
          num = res.result.data.length
        }
        console.log('单个商品id被购买的次数:',num)
        // 以上代码都能正常运行,num结果正确,就是该无法返回num的值
      }
    })
  }
回答关注问题邀请回答
收藏

3 个回答

  • 跨商通
    跨商通
    2023-03-18

    JS异步(可以百度了解一下)。

    2023-03-18
    有用
    回复
  • 虚明子
    虚明子
    2023-03-18

    setData

    2023-03-18
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2023-03-18

    你指的返回 是什么意思

    2023-03-18
    有用
    回复 4
    • Lexis
      Lexis
      发表于移动端
      2023-03-18
      调用这个函数就可以得到num,但是多次尝试一直为未定义,使用return num无法返回,setData也不行。
      2023-03-18
      回复
    • 虚明子
      虚明子
      2023-03-18
      如果是在page外部定义的该函数,应该需要获取页面栈 再调用setData
      2023-03-18
      回复
    • Lexis
      Lexis
      2023-03-18
      在page里,以下四个位置都试过了,data: { orderNumber: 0 }
      2023-03-18
      回复
    • Mr.Zhao
      Mr.Zhao
      2023-03-18回复Lexis
      学习一下js异步同步,社区高频问题   不学不行的
      2023-03-18
      回复
登录 后发表内容