Angularjs 如何循环使用$firebaseArray

Angularjs 如何循环使用$firebaseArray,angularjs,firebase,angularfire,Angularjs,Firebase,Angularfire,我创建了一组用户,如下所示- var ref = new Firebase(FIREBASE_URL + '/users'); var users = $firebaseArray(ref); 我已经将对象添加到这个数组中,我想循环遍历这个数组中的每个用户。我知道这在使用ng repeat的视图中是可能的,但我需要在控制器中执行。我试过了- angular.forEach(users, function(user) { console.log(user); }) 但是我没有得到任何结

我创建了一组用户,如下所示-

var ref = new Firebase(FIREBASE_URL + '/users');
var users = $firebaseArray(ref);
我已经将对象添加到这个数组中,我想循环遍历这个数组中的每个用户。我知道这在使用ng repeat的视图中是可能的,但我需要在控制器中执行。我试过了-

angular.forEach(users, function(user) {
    console.log(user);
})

但是我没有得到任何结果。

那时用户可能还没有加载,所以您需要等待:

var ref = new Firebase(FIREBASE_URL + '/users');
var users = $firebaseArray(ref);

users.$loaded()
    .then(function(){
        angular.forEach(users, function(user) {
            console.log(user);
        })
    });

下面是上面的文档:

您可以使用内置的
$list
属性,
e、 g.以下功能统计用户数

app.factory("Users", function($firebaseArray) {
  return $firebaseArray.$extend({             
    getUsers: function() {
      var user_count = 0;
      angular.forEach(this.$list, function(user) {
        user_count += 1;
        console.log(user);
      });
      return user_count;
    }
  });
})
然后使用它

var userList = new Users(ref);
userList.$loaded().then(function() {
  userList.getUsers();
});

很乐意帮忙,别忘了接受答案并上传。我接受了答案,但不幸的是没有足够的代表上传。但还要注意文档页面上的第二个片段:它显示了如何最好地调试AngularJS/Firebase上下文中加载的数据:
{{data | json}
console.log
在这里不是你最好的朋友。在Angular guide(角度指南)的第一页中进行了解释,并在这里就堆栈溢出问题询问了至少十次。请注意,@ArupSaha在这个答案中。该示例源自。
var fbref = new Firebase(FIREBASE_URL + '/customers');
customers = $firebaseArray(fbref);

customers.$loaded()
.then(function(data){
    angular.forEach(data, function(value, key) {
        console.log('key='+key+', value='+value);
    })
});