在同一个页面下调用同一个云函数,是否异步执行?
发布于 6 年前 作者 minxie 7432 次浏览 来自 官方Issues

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

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

2 回复

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){}

        ***

    }

}

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

回到顶部