Должен ли я получать общую длину документов в коллекциях каждый раз, когда запускаю функцию «загрузить еще».
Нет. Когда мы создаем алгоритм разбиения на страницы, нам всегда интересно загружать данные небольшими порциями. В Firestore нас всегда интересует размер каждого нового куска, который мы получаем. В общем, если новый блок имеет размер, который меньше установленного нами предела, например, 10 элементов на страницу, то это тот момент, когда вы должны отключить «загрузить дополнительную функцию».
Так что Идея заключается в том, что вы можете запросить страницы данных определенного размера. Вот полезный метод с именем limit(X)
, который может помочь вам достичь этого. Таким образом, вы можете выполнить запрос и получить страницу размером X
. Просто продолжите этот запрос с другой страницей размером X
и так далее. Таким образом, вы начинаете со страницы 1
, затем переходите по страницам, используя соответствующие методы, где вы должны указать, какой документ был последним на странице, а затем продолжать переходить к следующей странице, пока не останется элементов.
Если да, то как мне найти общее количество документов в коллекциях?
Не о количестве документов в коллекции, о которых вам нужно беспокоиться, а о количестве предметы, которые вы получите на следующей странице.