угловой нгДля получения длины ребенка - PullRequest
0 голосов
/ 23 апреля 2019

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

это мой код:

<div *ngFor="let event of events">
   <div>Eventname:{{event.name}} </div>
   <div> Amount of Arrival: {{event.arrival.length}} </div>
</div>

это моя БД:

 Event{
  a{
    date: "12,Nov"
    name: "best event"
    arrival:{
      a{
        name:"david",
        from:"USA"
       }
      b{
        name:"Mike",
        from:"GER"
       } 
    }
   }
}

это мой сервис:

   getDataList(listpath:string){
    this.itemsRef = this.db.list(listpath);
    this.items = this.itemsRef.snapshotChanges().pipe(
      map(changes => 
        changes.map(c => ({ key: c.payload.key, ...c.payload.val() }))
      )
    );
  return this.items;
  }

это мой компонент:

    this.db.getDataList("/Event/" ).subscribe(res => {
     this.events=res;
  });

Ответы [ 2 ]

0 голосов
/ 23 апреля 2019

событие Прибытие теперь является объектом, если вы можете изменить его на Массив, тогда вы можете использовать длину.{} - объект, [] - массив.Удачи!

0 голосов
/ 23 апреля 2019

попробуйте вместо этого

{{Object.keys(event.arrival).length}}

Ссылка Object.keys ()

...