使用jQuery / javascript按顺序进行ajax调用

时间:2016-12-07 04:28:06

标签: javascript jquery

我有一个案例,其中ajax调用需要按顺序运行
因此,要保持一个继续增加运行时间的队列,所以我使用了以下方法,但似乎无法正常工作。

var requestQueue=[];
   function processQueue() {
       var reqParam=requestQueue[0];
        $.ajax(reqParam).then(function() {
            requestQueue.shift();
            Logger.log("Queue is processed",requestQueue.length);
            if (requestQueue.length > 0) {
                processQueue();
            } else {
                Logger.log("Queue is processed");
            }
        }, function() {
            requestQueue.shift();
            console.log("Queue is processed",requestQueue.length);
            if (requestQueue.length > 0) {
                processQueue();
            } else {
                console.log("Queue is processed");
            }
        });
    }


//when new request trigger by user
   function onUserEvent(){
    if (requestQueue.length === 0) {
                                requestQueue.push(requestParameters);
                                processQueue();
                            } else {
                                requestQueue.push(requestParameters);
                            }
 }

0 个答案:

没有答案