相关疑难解决方法(0)

在javascript中链接异步调用的正确方法是什么?

我正在尝试找到创建异步调用的最佳方法,当每个调用依赖于先前的调用已完成.目前我通过递归调用定义的过程函数来链接方法,如下所示.

这就是我目前正在做的事情.

var syncProduct = (function() {
    var done, log;
    var IN_CAT = 1, IN_TITLES = 2, IN_BINS = 3;
    var state = IN_CAT;
    var processNext = function(data) {
        switch(state) {
            case IN_CAT:
                SVC.sendJsonRequest(url("/api/lineplan/categories"), processNext);
                state = IN_TITLES;
                break;
            case IN_TITLES:
                log((data ? data.length : "No") + " categories retrieved!");
                SVC.sendJsonRequest(url("/api/lineplan/titles"), processNext);
                state = IN_BINS;
                break;
            case IN_BINS:
                log((data ? data.length : "No") + " titles retrieved!");
                SVC.sendJsonRequest(url("/api/lineplan/bins"), processNext);
                state = IN_MAJOR;
                break;
            default:
                log((data ? data.length : "No") + …
Run Code Online (Sandbox Code Playgroud)

javascript titanium serverside-javascript node.js titanium-mobile

16
推荐指数
1
解决办法
1万
查看次数