В настоящее время у меня есть веб-страница, которая получает данные от нескольких API, и когда какой-либо из этих API-интерфейсов не работает, появляется предупреждение windows, позволяющее пользователю повторить попытку позже. Пример: если я получаю сообщение об ошибке в двух вызовах API, я дважды отображаю окно предупреждения на странице. Что я хочу сделать, так это отображать только один раз окно предупреждения, даже когда я получаю сообщение об ошибке более чем в двух вызовах API.
Вот пример моего кода
Базовый сервис. ts
protected handleError(error: HttpErrorResponse) {
let errorMessage = '';
if (error.error instanceof ErrorEvent) {
errorMessage = error.error.message
console.error('An error occurred:', error.error.message);
} else {
console.error(errorMessage);
}
window.alert('There was an issue with the page , try again later ');
return throwError(errorMessage);
}
Api .services.ts
get(): Observable< user[]> {
return this .http.get< user[]>(this.url)
.pipe(
catchError(this .handleError)); }
get(): Observable< Car[]> {
return this .http.get< Car[]>(this.url)
.pipe(
catchError(this .handleError)); }