Как запросить базу данных firebase для возврата angularfirelist из массива идентификаторов - PullRequest
1 голос
/ 14 июня 2019

У меня есть объект, у которого есть свойство, значением которого является список идентификаторов.

const obj = { list: ['id-1', 'id-2', 'id-3'] };

В настоящее время это все, что я могу сделать. Но он возвращает массив Observables.

// Class variable...
records: Observable<Record>[];

constructor(private afDB: AngularFireDatabase) {}

getRecords () {
  this.records = obj.list.map(id => this.afDB.object(`path/to/collection/${id}`));
}

Наличие this.records в качестве массива Observable не кажется лучшим для использования в шаблоне, в отличие от Observable массива.

Я бы предпочел records: Observable<Record[]>, чем records: Observable<Record>[].

Есть ли способ передать эти идентификаторы как часть функции запроса в базу данных angularfire?

1 Ответ

0 голосов
/ 14 июня 2019

Вы можете сделать что-то вроде этого:

afDB.collection('yourCollection', ref => ref.where('id', '==', 'yourId'));

Нашли это на https://github.com/angular/angularfire2/blob/master/docs/firestore/querying-collections.md

...