У меня есть 5 вызовов API на странице.некоторые apis требуют 20 секунд, чтобы дать ответ.некоторым требуется 30 секунд, чтобы дать ответ.некоторые занимают 10 секунд, поэтому, когда первый API дает свой ответ, первый API устанавливает индикатор загрузки в значение false.затем индикатор загрузки исчезает.Но другие API все еще работают. Я хочу показывать индикатор загрузки до тех пор, пока не ответят пять вызовов API.Можете ли вы дать мне некоторую идею, чтобы сделать задачу.
код:
component.ts
loading = true;
ngInit() {
this.api1();
this.api2();
this.api3();
this.api4();
this.api5();
}
api1(){
this.loading=true;
this.apiService.api1.subscribe(response => {
loading = false;
}, error=>{
});
}
api2(){
this.loading=true;
this.apiService.api2.subscribe(response => {
loading = false;
}, error=>{
});
}
api3(){
this.loading=true;
this.apiService.api3.subscribe(response => {
loading = false;
}, error=>{
});
}
api4() {
this.loading=true;
this.apiService.api4.subscribe(response => {
loading = false;
}, error=>{
});
}
api5() {
this.loading=true;
this.apiService.api5.subscribe(response => {
loading = false;
}, error=>{
});
}
ApiService.service.ts:
api1(): any {
return this.http.get('apiurl');
}
api2(): any {
return this.http.get('apiurl');
}
api3(): any {
return this.http.get('apiurl');
}
api4(): any {
return this.http.get('apiurl');
}
api5(): any {
return this.http.get('apiurl');
}