我一直在尝试在我的角度服务中正确处理与Firebase的显式同步。我使用angularFireCollection和初始加载回调函数(我需要根据第一个查询返回的数据预加载其他数据)。但是,我不知道如何在回调函数中访问获取的数据:
getGroupIds: function() {
var deferred = $q.defer();
var ref = new Firebase('https://<XXX>.firebaseio.com/groups');
angularFireCollection(ref, function(groups) {
console.log(groups);
deferred.resolve(groups);
});
return deferred.promise;
}
在上面的例子中,如何从组对象中访问实际数据?d 提前感谢任何提示。
答案 0 :(得分:2)
Firebase快照作为回调函数的参数提供,您可以按如下方式从中提取值:
angularFireCollection(ref, function(snapshot) {
console.log(snapshot.name() + " has value " + snapshot.val());
});
答案 1 :(得分:0)
通常,我将集合设置为范围,但其中任何一个似乎都有效。
var groups = angularFireCollection(ref, function() {
console.log(groups);
});
或在控制器中
$scope.groups = angularFireCollection(ref, function() {
console.log($scope.groups );
});