$q.allsettled эквивалентно в угловых 2, чтобы поймать весь успех и не удалось

Я хочу позвонить удалить 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+

0 ответов

Другие вопросы по тегам