Documentation / @andrew_l/mongo-pagination / withMongoPagination
Function: withMongoPagination() ​
withMongoPagination<
T
>(cursor
,options
?):QueryPaginator
<ExtractSchema
<T
>>
Enhances a MongoDB FindCursor
with pagination capabilities.
Type Parameters ​
• T extends FindCursor
<any
>
Parameters ​
• cursor: T
The MongoDB cursor to be paginated.
• options?: QueryPaginatorOptions
Optional configuration for pagination.
Returns ​
QueryPaginator
<ExtractSchema
<T
>>
Examples ​
ts
// Basic usage with a MongoDB cursor:
import { MongoClient } from 'mongodb';
async function paginateCollection() {
const client = new MongoClient('mongodb://localhost:27017');
await client.connect();
const db = client.db('exampleDb');
const collection = db.collection('exampleCollection');
const cursor = collection.find({ status: 'active' });
const paginator = withMongoPagination(cursor, {
paginationFields: ['_id'],
next: null,
});
const result = await paginator.exec();
console.log(result.items); // Logs the items for the current page
console.log(result.metadata); // Logs pagination metadata
}
ts
// Using a custom preQuery callback:
const paginator = withMongoPagination(cursor, {
preQuery: function () {
console.log('Executing query...');
},
});
const result = await paginator.exec();
console.log(result.items);