Я хочу вызвать api для каждого выбранного клиента.Я использую один сервисный слой.поэтому, когда я вызываю службу с выбранным кодом клиента, клиент будет удален.
В AngularJS я использовал $ .allSettled, который будет давать обратные вызовы для полностью заполненных и не полностью заполненных.Я могу вставить данные об успешном и неудачном удалении клиентов, а также отобразить в пользовательском интерфейсе информацию об успешном и неудачном списке.
$q.allSettled(promises)
.then(function(results) {
results.forEach(function(result) {
if (result.state === 'fulfilled') {
// success :)
} else {
// failed :(
//result.reason.config.data contains api input data
}
});
}).finally(function() {
});
this.promises = [];
//FORMING LIST OF PROMISES
this.customerList.forEach(code => {
this.promises.push(this.customersservice.delete(code));
});
Promise.all(this.promises).then(values => {
console.log(values);
}).catch(reason => {
//here i need to catch every time an api call fails for some reason , so that I can show in UI
console.log(reason)
});
//SERVICE
delete(code: string): Observable<any> {
return this.http.delete(`${this.baseURL}/` + code)
}
Я реализовал, но мне нужно получить как список успеха, так и список неудач.Так что я могу показать в пользовательском интерфейсе.какие клиенты удалялись, а какие добились успеха.Я хочу сохранить один массив, содержащий объекты, имеющие {custCode: 100, status: fail / success}
Как этого добиться в angular2 +