Я пытаюсь сделать свое приложение 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 не работает, если я изменю это.
Спасибо