Ich hätte gerne Hilfe zur Verwendung des Ionic LoadingControllers mit mehreren http-Aufrufen, die in einer asynchronen Funktion verarbeitet werden.Ionic 3 - Asynchrone Http-Aufrufe und Ionic Loading Problem
Erstens, das ist meine Asynchron-Funktion mit dem Versprechen
LoadDatafromUrls(urLs) {
return new Promise((resolve, reject) => {
let loader = this.loadingCtrl.create({
content: 'Son Bilgiler Alınıyor',
});
var urlCalls = [];
urLs.forEach((entry: any) => {
loader.present().then(()=>{
this.http.get(entry.url).map((response : Response)=>{
console.log(response.json());
urlCalls.push(response.json());
}).subscribe(()=>{
console.log("subscribe");
});
loader.dismiss();
})
})
Promise.resolve(urlCalls).then((res)=>{
console.log(res);
resolve(res);
},
(res)=>{
reject(res);
})
//return Promise;
})
}
Zweitens, ich nenne es auf diese Weise.
RequestObject.LoadDatafromUrls(urLs).then((results)=>{
console.log(results);
},
(errors)=>{
console.log(errors);
})
Bei dieser Methode habe ich die Fehlermeldung unter:
Fehlermeldung: "Nicht abgefangene (in Versprechen): RemoveView nicht gefunden wurde". Außerdem funktioniert es nicht so, wie ich es erwarte.
Ich bin wirklich offen für immer neue Methoden, neue Wege. Bitte teilen Sie, wenn ich eine bessere Implementierung haben kann.
ich die Art und Weise versuchen Sie oben erwähnt. Ich werde diesen Kommentar über das Feedback bearbeiten. Vielen Dank ! – ozercevikaslan
Es zeigt sich nur wie 2-3 Sekunden und verschwindet dann wie viele URL wie ich gesetzt habe. Außerdem habe ich nur eine URL gesetzt, die 12 MB Daten abruft und es ist unmöglich, sie in 2-3 Sekunden zu bekommen, aber sie verschwindet in 2-3 Sekunden wieder. – ozercevikaslan
Das Problem ist, dass es innerhalb des Umfangs von: Promise.resolve (urlCalls) .then ((res) => { console.log (res); resolve (res); loader.dismiss() }, (res) => { ablehnen (res); }) während die Anfrage lebendig ist, meine ich seine ausstehende oder abrufende Daten. Es sollte zuerst die Daten von Anruf erhalten und dann wird in Promise.resolve Funktion ... Ich bin so verwirrt, warum es dort vor http Anruf bekommt endet – ozercevikaslan