我试图访问在firebase数组中返回的数据,并返回其中的1个对象--我的firebase数组返回3个对象,我希望能够遍历这3个对象并比较数据。真的不知道该怎么做:
它的功能getNewsDetail是问题所在。
angular.module('news.services', ['ionic', 'firebase' ])
.factory('NewsItems', ['$firebaseArray', function($firebaseArray){
var newsRef = new Firebase ('https://xxxx.firebaseio.com/newsitems');
var theNewsItems = [$firebaseArray(newsRef)];
//alert($firebaseArray(newsRef).length)
return{
getNewsItems: function(){
return $firebaseArray(newsRef);
},
getNewsDetail: function(newsID){
for(var i = 0; i < theNewsItems.length; i++){
if(theNewsItems[i].id == parseInt(newsID)){
return theNewsItems[i];
}
}
return null;
}
};
}]);包括Firebase布局:
newsitems
-KIip4vmlntvakLoBAXA
Detail: "Detail Y"
Title: "Title X"
id: 0
-KIipATckNU1WzEhkY9-
Detail: "Come down and play with us"
Title: "New Players Welcome"
id: 1
-KIipHiM2NYlh_BgG8UM
Detail: "story 3"
Title: "title 3"
id: 2发布于 2016-05-29 07:14:18
当您想要在AngularJS视图中使用Firebase中的单个对象时,可以使用$firebaseObject。所以:
getNewsItems: function(){
return $firebaseArray(newsRef);
},
getNewsDetail: function(newsID){
return $firebaseObject(newsRef.child(newsID);
}Firebase在加载数据时足够智能,如果内存中已经有数据,它就不会重新加载数据。
https://stackoverflow.com/questions/37504465
复制相似问题