* ngFor в * ngFor в базе данных Firebase - PullRequest
0 голосов
/ 29 апреля 2019

Я использую базу данных Firebase и AngularFireDatabase. Я не могу отобразить значение из переменной в * ngFor, этот * ngFor находится в другом * ngFor.

    constructor(private db: AngularFireDatabase) {
    db.list('/devices/').snapshotChanges().pipe(map(changes => { 
        return changes.map(c => ({ key: c.payload.key, ...c.payload.val() })) }))
        .subscribe(o => { this.devices = o });
  }


    <div *ngFor="let d of db.devices;">
    <h4>{{d.name}}</h4>
    <div *ngFor="let s of d.sensors;">
    <p>Sensor value: {{s.value}}</p>
    </div>
    </div>

ОШИБКА Ошибка: не удается найти другой поддерживающий объект «[объект]] типа« объект ». NgFor поддерживает только привязку к итерациям, таким как массивы.

1 Ответ

2 голосов
/ 29 апреля 2019

* ngFor, как и любые циклы for, может работать только на Iterables. Ошибка возникает из-за того, что вы пытаетесь запустить объект, который не является Iterable, попробуйте распечатать ваши объекты и увидите, что они являются Iterables

...