Подход к разработке бесконечной прокрутки с базой данных Firebase в реальном времени в приложении angular - PullRequest
0 голосов
/ 29 февраля 2020

Я реализую бесконечную прокрутку в angular приложении с базой данных реального времени firebase в качестве бэкэнда. Рассмотрим приложение для чата со следующим требованием.

  • Загрузка пакета (20) сообщений в исходном порядке загрузки по дате создания в порядке убывания, чтобы пользователь получал последний пакет сообщений.
  • При прокрутке пользователя, чтобы достичь вершины сообщений, нужно загрузить другую партию сообщений в том же порядке, пока он не получит все сообщения в базе данных.

Я попытался с помощью следующего подхода но у него есть следующий неудачный сценарий ios

  • Чат должен прослушивать изменения значения. если какой-либо подписанный пользователь выполняет операции CRUD с сообщениями, он должен получать обновления потока.
  • Сообщения могут иметь тип фильтра (файл или текст), если пользователь хочет фильтровать только файлы, следующий пакет должен получить только файлы.

Пожалуйста, кто-нибудь знает подход или имеет рабочий пример, ответьте на этот вопрос. Сначала я попытался получить последнюю партию, а затем попытался получить следующую партию в зависимости от идентификатора последнего сообщения, в котором происходит сбой в сценарии при получении нового сообщения. Только в первом пакете он принимает только последние 20 сообщений, поэтому, когда приходит новое сообщение, последнее сообщение удаляется из снимка или изменений состояния. поэтому я потерял ссылку на последнее сообщение и не смог обновить пользователя.

Заранее спасибо за ответ.

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