Как определить последнее изменение состояния в firebase?

# #firebase #google-cloud-firestore

Вопрос:

Я использую firebase-js-sdk и функцию stateChanges для обнаружения входящих изменений.

В своей базе данных я храню сообщения. После подписки в первый раз stateChanges наблюдатель запускается для каждого сообщения, и в данный момент я перезагружаю пользовательский интерфейс после каждого обновления. Есть ли способ предотвратить ненужные обновления пользовательского интерфейса?

 this.firebaseMessagesObservable$.subscribe((message: any) => {
  this.update(message);
  this.refreshUi();
});
 

Комментарии:

1. Откуда запускаются эти обновления ?

2. Инициируется stateChanges() наблюдателем. Представьте, что есть 10 изменений состояния, я получаю 10 обновлений. В обновлении X мне нужно знать, последнее ли это обновление на данный момент

3. Вместо описания вашего кода, пожалуйста, отредактируйте свой вопрос, чтобы на самом деле показать минимальный код, воспроизводящий проблему, о которой вы спрашиваете. Это также помогло бы узнать, что определило для вас «последнее», так как у Firestore самого этого определения нет (или, по крайней мере, оно не позволяет запрашивать об этом).

4. Спасибо! Я обновил свой код.

5. Если обработка всех этих 10 сообщений обновит одно и то же значение, чтение этого значения всегда даст вам последнее…верно ?