Rank 1: Thread
Does anyone have a properly implemented example code for pagination ?
I am thinking of using the cursorAfter and cursorBefore to lazily load the feed data but would be great to get some good examples on how to go about it.
Votes
0
Replies
13
Participants
Unknown
Messages
14
Rank 1: Thread
Does anyone have a properly implemented example code for pagination ?
I am thinking of using the cursorAfter and cursorBefore to lazily load the feed data but would be great to get some good examples on how to go about it.
Hi, while I search for examples, gonna leave this here for reference: https://dev.to/appwrite/this-is-why-you-should-use-cursor-pagination-4nh5
Example of cursor pagination loading all pages: https://github.com/Meldiron/almost-gist/blob/main/backend/functions/onGistChange/src/index.js#L116-L143
Rank 1: Thread
I'll check it out. Thanks Jyoti
Rank 1: Thread
@joeyouss Shouldn't this example return all the documents ?
return [
...response.documents,
...(await getAllPages(collectionId, queries, nextCursor))
]
}
The await function will keep executing till it finds all the documents. How would it be different than listing the entire collection at once ?
Admin
That's a recursive function that calls itself until it fetches all pages so there are multiple API calls to get all the data
Rank 1: Thread
True but from what i understand, it will recursively call till it fetches all the documents from the collection right and finally returns an entire array of it ? This does not look not like it is being lazily loaded for infinitely scrolling a feed.
Admin
No it is not, but perhaps it shows you how to use the cursor
Admin
The rest depends on your front end. You would make another list documents API call when you're towards the end of your list
Rank 1: Thread
thanks for clarifying, the api documentation covers the cursor usage well. I was just wondering how we would actually implement it in a flutter app. If i wanted to fetch all documents, i would just listDocuments the entire collection though.
Admin
Maybe this will help: https://pub.dev/packages/infinite_scroll_pagination
Admin
I'm pretty sure I've also seen tutorials online for how to implement infinite scrolling.
Admin
The general idea is all the same..once the user reaches the end or as they get close to the end, fetch more data
Rank 1: Thread
This sounds interesting. I'll check it out, thanks !