Skip to content

Commit 3ff762d

Browse files
authored
docs(db): fix rtdb lists
1 parent 1434692 commit 3ff762d

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

docs/rtdb/lists.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -204,15 +204,16 @@ itemsRef.remove();
204204
import { Component } from '@angular/core';
205205
import { AngularFireDatabase, AngularFireList } from 'angularfire2/database';
206206
import { Observable } from 'rxjs/Observable';
207+
import 'rxjs/add/operator/map';
207208

208209
@Component({
209210
selector: 'app-root',
210211
template: `
211212
<ul>
212213
<li *ngFor="let item of items | async">
213214
<input type="text" #updatetext [value]="item.text" />
214-
<button (click)="updateItem(item.$key, updatetext.value)">Update</button>
215-
<button (click)="deleteItem(item.$key)">Delete</button>
215+
<button (click)="updateItem(item.key, updatetext.value)">Update</button>
216+
<button (click)="deleteItem(item.key)">Delete</button>
216217
</li>
217218
</ul>
218219
<input type="text" #newitem />
@@ -225,7 +226,10 @@ export class AppComponent {
225226
items: Observable<any[]>;
226227
constructor(db: AngularFireDatabase) {
227228
this.itemsRef = db.list('messages');
228-
this.items = this.itemsRef.valueChanges();
229+
// Use snapshotChanges().map() to store the key
230+
this.items = this.itemsRef.snapshotChanges().map(changes => {
231+
return changes.map(c => ({ key: c.payload.key, ...c.payload.val() }));
232+
});
229233
}
230234
addItem(newName: string) {
231235
this.itemsRef.push({ text: newName });

0 commit comments

Comments
 (0)