Я сделал быстрое подтверждение концепции для простого приложения Angular с поддержкой Firestore. Однако моя компания находится в экосистеме AWS. Существует ли рабочий процесс rx, аналогичный приведенному ниже, если мы просто храним коллекции json объектов в AWS?
Вот основы того, что я должен был сделать в Firestore:
public get mentors(): Observable<Participant[]> {
return this._mentors.valueChanges();
}
public get mentorEntries(): Observable<DocumentChangeAction<Participant>[]> {
return this._mentors.snapshotChanges();
}
constructor(
private firestore: AngularFirestore) {
this._mentors = this.firestore.collection('mentors');
}
public addMentor(mentor: Participant): Promise<DocumentReference> {
return this._mentors.add(mentor);
}
mentors$: Observable<Participant[]>;
constructor(private participantService: ParticipantService) {
this.mentors$ = participantService.mentors;
}
onSubmit() {
if (this.existingDocument) {
this.existingDocument.payload.doc.ref.update(this.registerForm.value)
.then(this.handleFulfilled, this.handleRejected);
} else {
this.participantService.addMentor(this.registerForm.value)
.then(this.handleFulfilled, this.handleRejected);
}
}
Для моих нужд простота Firestore rx была идеальной. Читая документы Amplify, я вижу много обещаний, нужно ли мне отслеживать изменения вручную? Есть ли у AWS аналогичная конструкция rx?