1
ファイヤーベース配列で返されたデータにアクセスしようとしていて、これらのオブジェクトのうち1つを返しています - ファイヤーベース配列が3つのオブジェクトを返しています。データを比較する。実際に何をすべきかわからない:firebaseArrayをループして1つのオブジェクトを返す必要があります
その関数getNewsDetailが問題です。
Firebaseレイアウトを含め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;
}
};
}]);
:
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
おかげさまでフランクは私が望むものに近いが、正確ではないと思う - 私はファイヤーベースのレイアウトを追加して、おそらくもっと理にかなっていると思う。例えば。私が2のidを渡すと、リストの最後のnewsItemが返されると思います。 –