0

我已經得到我的代碼來讀取列表,然後將$ id作爲stateParam推送到下一個屏幕。但是我似乎無法正確讀取子數組,即使我靜態地設置引用。例如,這是我的結構在火力地堡:在Ionic1和Angularfire中,如何檢索子數組?

"Providers" : { 
"2" : { 
    "-KrMKUqGM-3dEYLPsgUB" : { 
    "business_name" : "Coca Cola", 
    "first_name" : "Dave", 
    "last_name" : "Watson" 
    }, 
    "234543fdgst3EYLPqGM-d" : { 
    "business_name" : "Pepsi", 
    "first_name" : "Joe", 
    "last_name" : "Styles" 
    } 
}, 
"3" : { 
    "-KrMKUqGM-3dEYLPsgUB" : { 
    "business_name" : "Nestle", 
    "first_name" : "Sarah", 
    "last_name" : "Douglas" 
    }, 
    "234543fdgst3EYLPqGM-d" : { 
    "business_name" : "Cadburys", 
    "first_name" : "Michael", 
    "last_name" : "Smith" 
    } 
} 
} 

我有一個服務,它允許用戶挑選具有的ID爲1,2,3,4,5,6,7等的類型一旦它們已經選擇,他們需要選擇一個提供者,如上面的firebase示例所示。

這是我遇到問題的地方。我似乎無法得到該子陣列。 IE瀏覽器。

"-KrMKUqGM-3dEYLPsgUB" : { 
    "business_name" : "Coca Cola", 
    "first_name" : "Dave", 
    "last_name" : "Watson" 
    }, 
    "234543fdgst3EYLPqGM-d" : { 
    "business_name" : "Pepsi", 
    "first_name" : "Joe", 
    "last_name" : "Styles" 
    } 

以數組形式讀取。這是我到目前爲止的代碼:

angular.module('buddyproviders', ['firebase']) 

.service('BuddyProviders', ['$firebaseArray', 
function($firebaseArray){ 
var ref = firebase.database().ref().child('/Providers/2/'); 
var items = $firebaseArray(ref); 
var providers = { 
    'providers': items 
} 
return providers;  
}]); 

任何人都可以就如何解決服務正常閱讀的建議嗎?我也使用AngularFire

回答

0

也許嘗試這樣?

entriesRef$: FirebaseListObservable<any[]>; 
this.entriesRef$ = database.list('/Providers/' + providerNumber); 
this.entriesRef$.subscribe(snapshots => { yourmapping here }); 
相關問題