我写好了3个ajax 怎么写成同步 网上看了很多资料看不懂?(已经解决 套着用)
发布于 5 年前 作者 etao 7339 次浏览 来自 官方Issues

我写好了3个ajax  怎么写成同步 网上看了很多资料看不懂?

比方说ajaxfn1  ajaxfn2  ajaxfn3  怎么用await实现同步   这3个异步ajax内部不能动

6 回复

有promise封装一下,然后Promise.all([promise1,promise2,promise3]).then()

// 用promise对象封装const jqPromiseAjax = params => {    return new Promise((resolve, reject) => {        $.ajax({            url: params.url,            type: params.type || ‘get’,            dataType: ‘json’,            headers: params.headers || {},            data: params.data || {},            success(res) {                resolve(res)            },            error(err) {                reject(err)            }        })    })}

// 再使用async和awaitasync function consoleLogUserInfo() {    const data = await jqPromiseAjax({        url: ‘/proxy/user/getUserInfo’,

 type: ‘get’

   }).then(res => res.data)        console.log(data)}

ajax套着用,一个返回数据后在发起第二个,小程序ajax都是异步请求

在回调里面就好了啊

回到顶部