0
我有一個關於Angular 4和Observable的快速問題。 在我的程序中,我有一個Component,它創建了一個應該發送給api的「事物」列表。其次,我有一個服務,它獲取一個元素(「事物」 - >一個!),將它發送給api並返回一個Observable。 Here's代碼: 組件:角4可觀察叉加入陣列
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 === true) {
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調用一次(btw等待所有API調用)?
非常感謝!
好的,謝謝! 但是,我必須把這個...?在組件中而不是對服務的調用? 但'然後'saveTimer(定時器:定時器)不會工作... – Junias