【发布时间】:2018-03-30 01:13:25
【问题描述】:
我有一个关于 Angular 4 和 Observable 的快速问题。 在我的程序中,我有一个组件,它创建一个应该发送到 api 的“事物”列表。 其次,我有一个服务,它获取一个元素(“事物”-> 一个!),将其发送到 api 并返回一个 Observable。 这是代码: 组件:
saveTimers() {
// gehe alle selektierten Timer durch und lege Sie an
let timerSuccess = [];
let timerFailed = [];
let timers = [];
for (let epgEntry of this.searchResult) {
if (epgEntry.checked) {
let timer = new Timer;
// magic
this.timerService.saveTimer(timer).
subscribe(
data => {
console.log(data);
if (data) {
timerSuccess.push(timer);
} else {
timerFailed.push(timer);
}
},
error => { this.variables.setFailure(error); }
);
}
}
//both empty, because api didn´t return yet
console.log(timerSuccess);
console.log(timerFailed);
if (timerSuccess.length > 0) {
this.variables.setSuccess('Timer erfolgreich angelegt');
}
if (timerFailed.length > 0) {
this.variables.setFailure('Timer konnte(n) nicht angelegt werden');
}
}
服务:
saveTimer(timer: Timer): Observable<boolean> {
// magic --> returns an observable
}
现在的问题是:我如何使用 Observable.forkJoin()(在组件中)一次执行所有 api 调用(顺便说一句,等待所有 api 调用)?
非常感谢!
【问题讨论】:
标签: angular observable