您可以使用列表或對象函數AngularFireDatabase
從數據庫中獲取對象或列表。你有FirebaseListObserver
與預定義(不是你的自定義)類的對象數組。
您將不得不手動將從FirebaseListObservable中的數據庫獲得的結果映射到您的自定義類的對象數組。
我假設你的功能,讓您的英雄從數據庫看起來是這樣的:
myHeroes(): FirebaseListObservable<Hero[]> {
return this.db.list('heroes');
}
您可以將結果映射到您的自定義類的數組稱爲英雄。您可以使用lambda表達式或將函數作爲參數傳遞(本例)。
myHeroes(): Observable<Hero[]> {
return this.db.list('heroes').map(Hero.fromJsonList);
}
如果你得到一個錯誤的地圖是不是一個函數,添加import "rxjs/add/operator/map";
在英雄類添加這兩個靜態函數:
static fromJsonList(array): Hero[] {
return array.map(Hero.fromJson);
}
//add more parameters depending on your database entries and Hero constructor
static fromJson({id, name}): Hero {
return new Hero(id, name);
}