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);
})
});