Получение идентификатора документа с помощью коллекции angularfire2-offline - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь сделать свое приложение Ionic с firebase доступным для автономного использования.Для этого я пытаюсь реализовать angularfire2-offline.Мне нужны идентификаторы документов в коллекции.Мой старый код работал так:

public recipeCollection: AngularFirestoreCollection<Recipe>;
this.recipeCollection = angularFireStore.collection<Recipe>('recipes');

С помощью метода findAll:

findAll(): Observable<Recipe[]> {
    const changeActions: Observable<DocumentChangeAction<Recipe>[]> =
        this.recipeCollection.snapshotChanges();
    return changeActions.pipe(
        map(actions => actions.map(a => {
          const data = a.payload.doc.data();
          data.id = a.payload.doc.id;
          return {...data} as Recipe;
        })));
  }

Если я следую инструкциям angularfire2-offline, я должен изменить его следующим образом:

recipes: AfoListObservable<Recipe[]>;
this.recipes = afoDatabase.list('/recipes');

Но как мне изменить мой метод findAll, чтобы получить коллекцию Observable с идентификаторами документов, поскольку snapshotChanges () не существует в AfoListObservable, а также pipe не работает, если я изменю это.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...