Как я могу определить последний документ из списка сообщений? - PullRequest
0 голосов
/ 24 апреля 2020

Вот так я получаю список рассылки в виде списка. Этот код выбирает начальный список, который ограничен 30, и я хочу загрузить больше, поскольку пользователь прокручивает. Я хочу получить следующий набор сообщений в списке, который startAfter () последний пост в первоначальном списке. Как определить lastDocument для startAfter (lastDocument)?

static Future<List<Post>> getFeedPosts(String userId) async {
    QuerySnapshot feedSnapshot = await feedsRef
        .document(userId)
        .collection('userFeed')
        .orderBy('timestamp', descending: true)
        .limit(30)
        .getDocuments();
    List<Post> posts =
        feedSnapshot.documents.map((doc) => Post.fromDoc(doc)).toList();
    return posts;
  }

1 Ответ

1 голос
/ 24 апреля 2020

Всякий раз, когда вы загружаете свой список документов, сохраняйте его в переменной, и вы можете получить последний элемент, используя:

yourDocumentList.last;

, или вы можете просто сохранить свой последний элемент

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