Angular 2 - 两个服务,第二个需要第一个的结果
Angular 2 - Two Services, second requires result of first
我想我需要某种类型的 promise 链,但我不懂语法...
在同一组件内:
我打电话给:
this.somethingService.getSomethings().then(somethings => this.somethings = somethings);
那我需要打电话给:
this.otherService.getOthers(this.somethings).then(others => this.others = others);
在第二次服务调用中,我使用第一个服务的结果对其内容执行聚合函数,但在进行第二次调用时它是空的,因此第二个服务 returns 为空。
如何让第二个服务等到第一个承诺已经解决。
谢谢
史蒂夫
您可以这样链接承诺:
this.somethingService.getSomethings().then(somethings => {
this.somethings = somethings;
return this.otherService.getOthers(somethings);
}).then(others => {
this.others = others;
});
第二次回调会收到第一次回调returns承诺的结果
我想我需要某种类型的 promise 链,但我不懂语法...
在同一组件内:
我打电话给:
this.somethingService.getSomethings().then(somethings => this.somethings = somethings);
那我需要打电话给:
this.otherService.getOthers(this.somethings).then(others => this.others = others);
在第二次服务调用中,我使用第一个服务的结果对其内容执行聚合函数,但在进行第二次调用时它是空的,因此第二个服务 returns 为空。
如何让第二个服务等到第一个承诺已经解决。
谢谢
史蒂夫
您可以这样链接承诺:
this.somethingService.getSomethings().then(somethings => {
this.somethings = somethings;
return this.otherService.getOthers(somethings);
}).then(others => {
this.others = others;
});
第二次回调会收到第一次回调returns承诺的结果