收藏
回答

在同一个页面下调用同一个云函数,是否异步执行?

如题,我在同一个页面中,需要两次调用同一个云函数,但是,他们返回值的时间却与我调用的顺序相反,请问该怎么解决,谢谢各位前辈,代码如下图:

这个就是上面被调用的那个云函数的定义

回答关注问题邀请回答
收藏

2 个回答

  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-11-04

    toExam: async function(){

        var { result = { data:[] } } = await wx.cloud.callFunction(...)

        backDataCount = result.data.length

        if(){ *** }

        else if(){ *** }

        else if(backDataCount != 0){

            var { result = { data:[] } } = await wx.cloud.callFunction(...)

            stu = result.data[0]

            if(stu.stuName != this.data.stu_name){}

            ***

        }

    }

    2019-11-04
    赞同
    回复 1
    • 可待
      可待
      2019-11-04
      原来这个async和await可以这样用的呀,我一直都是放在云函数里面的……谢谢酸奶前辈~
      2019-11-04
      回复
  • 发条方
    发条方
    2019-11-04

    wx.cloud.callFunction 本身是一个异步函数,返回一个 Promise,你可以在第一个异步函数执行成功后再执行第二个异步函数,如此二者的执行顺序才可保证,即在你代码的 .then 回调函数里执行第二个异步函数。

    2019-11-04
    赞同
    回复 1
    • 可待
      可待
      2019-11-04
      好的 我先去试试 谢谢前辈
      2019-11-04
      回复
登录 后发表内容
问题标签