Ich möchte alle angegebenen Daten abrufen und an Array, aber diese Funktion Callback zurückgeben, bevor der Prozess abgeschlossen ist.Firebase: Warten auf Async und Push an ein Array
function getRadiusPartner(){
getAllPartner()
.then(function (snap){
var location = [];
snap.forEach(function(user){
coordsRef.child(user).once("value", function(snapshot){
location.push(snapshot.val());
})
})
return Promise.all(location)
});
}
thankyou finden .. wenn ich erste Option verwenden möchten, wie wäre es, wenn die Daten als 1500 mehr bekommen? –
Nun, die erste Option ist ein manueller Ansatz und nicht der effizienteste, aber es ist am einfachsten zu implementieren. Eine ForEach-Schleife ist sehr, sehr schnell. Wenn aus irgendeinem Grund wie Internet langsam ist, wenn Sie online oder etwas ähnliches ziehen, können Sie die Zeit für den Fall ein wenig länger machen –