繁体   English   中英

Angularjs,等待嵌套的承诺

[英]Angularjs, wait for a nested promise

我有3个服务返回3个promise,但第三个需要第二个数据,所以我把它称为第二个。 我想等待所有三个承诺得到解决,这是我实现的方式,但不起作用(仅等待第一个和第二个)。

var promise1, promise2, promise3;

promise1 = service1();
promise2 = service2();

promise2.then(function (data) {
  promise3= service3(data);

});

$q.all([ promise1, promise2, promise3]).then(function success() {
 //somehing
});

您可以使用来自第三个服务的返回承诺分配第二个promise的then()回调。

var promise1, promise2, promise3;

promise1 = service1();
promise2 = service2();

promise3 = promise2.then(function (data) {
  return service3(data);
});

$q.all([ promise1, promise2, promise3]).then(function success() {
 //somehing
});

您是否尝试将承诺2嵌入承诺1中,然后将您的最终决心置于承诺3代表中?

这是相当光滑的代码,我当然不是专家,但不得不等待其他服务电话上的事情,并不得不做这样的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM