由于 Angularfire5 我们不能再使用该$key了所以我试图转换它,并找到了一个关于如何将列表更改为包含自己键的列表的代码片段:
getRankings(week): Observable<any>
{
return this.db.list('/ranking_day/d_' + week, ref => ref.orderByChild('position')).snapshotChanges()
.map(rankings => {
return rankings.map(action => ({ key: action.key, ...action.payload.val() }))
})
现在我想从
this.db.list('/userProfile' + key)
并结合它以将可观察量返回到我的组件。
我为此挣扎得太厉害了,所以我想我错过了一些很明显的东西......
PS 我知道我的数据模型可能会更好,但那是以后的事情。
看看是否能帮助你。
getDrinks(pagename: string) {
return this.database.list<DrinkType>(`/${pagename}/drinks`).snapshotChanges().pipe(map(changes => {
return changes.map(c => ({
key: c.payload.key,
drinkType: this.database.list<DrinkType>(`${pagename}/drinkType/${c.payload.key}`) .snapshotChanges().pipe(map(actions => {
return actions.map(action => ({
key: action.payload.key,
...action.payload.val()
}))
})
),
...c.payload.val()
}))
})
)
}