0

角度サービスに問い合わせると、resultまたは約束していないresultに解決できる約束事が返されます。 私は何とかチェーンの約束をする必要があると思うが、決してそれをやり遂げなかった。複雑なFirebaseクエリの角度サービスを作成する

var result = []; 
var groups = $firebaseArray(firebase.database().ref().child("users/" + uid + "/leagues")); 
groups.$loaded().then(function (data) { 
    _.each(data, function(one){ 
    firebase.database().ref().child('leagues/' + one.$id).once('value', function(snapshot) { 
     result.push(snapshot.val()); 
    }); 
    }); 

} 

答えて

2

これはあなたが欲しいものですか?

function getGroups() { 
 
    return $firebaseArray(firebase.database().ref().child("users/" + uid + "/leagues")).$loaded(); 
 
} 
 

 
function getDataGroups(groups) { 
 
    return $q.all(groups.map(function(one) { 
 
    return firebase.database().ref().child('leagues/' + one.$id).once('value'); 
 
    })); 
 
} 
 

 
getGroups().then(getDataGroups).then(function(results) { 
 
    //blabla 
 
});

注:私は(ので、多分、私はいくつかのエラーをやった)firebaseでプレイしたことがありませんが、いくつかの簡単な研究$loaded()once()後の両方の約束を戻ってきています。

+0

まさに私が必要としていた、感謝。 –