Search code examples
firebasefirebase-realtime-databaseionic3angularfire5

Angularfire5 - Get the key of Realtime database documents in list - #askfirebase


I am loading a list and passing it to a component to then render the information. One of the items I need is the ID. How can I see that in the list. I've seen the documentation and it does not help. It only shows the key of the parent.

this.allWorkouts = this.afDb.list<IWorkout>('/workouts')
    .valueChanges()
    .take(1)
    .map((array) => array.reverse()) as Observable<IWorkout[]>;

<ion-card *ngFor="let workout of allWorkouts | async">
    <card-workout [workout]="workout"></card-workout>
</ion-card>

Solution

  • In version 5.0 of AngularFire you need to use snapshotChanges() if you want to get access to the key.

    valueChanges() is only for basic use cases were you only care about the JSON tree.