我想按顺序发送角度服务调用

时间:2016-12-08 18:56:52

标签: jquery angularjs

我在项目中面临问题。我必须向数据库发送5个调用。后 顺序:1 - > 2→ 3,4,5-

我正在使用共享的app.factory服务进行通话。 我无法这样做。我正在使用angularjs。如果我执行async:false,所有调用都将是异步的,这需要时间。如果我说的是真的,那么我的1> 2电话会很晚,而3,4,5个电话很早就会响应。

app.factory have shared success call for proc1, proc2,proc3,proc4,and proc5.

我想执行1> 2次呼叫,然后执行3,4,5并行。

感谢

1 个答案:

答案 0 :(得分:1)

您对数据库的调用需要返回promises,然后可以将它们链接在一起。

var result = service.call1(args)
.then(function(){return service.call2;})
.then(function($q){
    var promises = [
        service.call3,
        service.call4,
        service.call5
    ];
    return $q.all(promises);
});

在没有看到任何代码结构的情况下,这与我可以获得的具体相同,但它应该足以告诉您该怎么做。