Documentation Index
Fetch the complete documentation index at: https://generaltranslation.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Paginador de X API con amplia funcionalidad
Esta clase ofrece un soporte de paginación completo para la X API, que incluye:
- Iteración automática con bucles
for await...of
- Control manual de páginas con
fetchNext() y fetchPrevious()
- Acceso a metadatos para tokens y recuentos de paginación
- Manejo de errores y detección de límites de uso
- Soporte para paginación tanto hacia adelante como hacia atrás
Ejemplo
// Automatic iteration
const followers = await client.users.getFollowers('783214');
for await (const follower of followers) {
console.log(follower.username);
}
// Manual control
const followers = await client.users.getFollowers('783214');
await followers.fetchNext();
console.log(followers.items.length); // Number of followers
console.log(followers.meta.nextToken); // Token de página siguiente
// Check status
if (!followers.done) {
await followers.fetchNext();
}
Parámetros de type
| Name | Description |
|---|
T | El type de los elementos paginados |
• new Paginator<T>(fetchPage): Paginator<T>
Crea una nueva instancia de Paginator
| Nombre | Tipo | Descripción |
|---|
fetchPage | (token?: string) => Promise<PaginatedResponse<T>> | Función que obtiene una página de datos a partir de un token de paginación |
Paginator<T>
paginator.ts:90
• get items(): T[]
Devuelve todos los elementos obtenidos
T[]
paginator.ts:97
• get meta(): any
Obtiene los metadatos de paginación actuales
any
paginator.ts:104
• get includes(): undefined | Record<string, any>
Obtiene los datos actuales de includes
undefined | Record<string, any>
paginator.ts:111
• get errors(): undefined | any[]
Obtiene los errores actuales
undefined | any[]
paginator.ts:118
• get done(): boolean
Comprueba si la paginación ha finalizado
boolean
paginator.ts:125
• get rateLimited(): boolean
Comprueba si se alcanzó el límite de solicitudes
boolean
paginator.ts:132
▸ fetchNext(): Promise<void>
Obtiene la página siguiente y añade elementos a la instancia actual
Este método obtiene la siguiente página de datos y agrega los elementos a la
instancia actual del paginador. Actualiza el estado de la paginación y los metadatos.
Promise<void>
Ejemplo
const followers = await client.users.getFollowers('783214');
await followers.fetchNext(); // Obtener la primera página
console.log(followers.items.length); // Cantidad de seguidores
if (!followers.done) {
await followers.fetchNext(); // Obtener la segunda página
console.log(followers.items.length); // Total de seguidores entre páginas
}
Throws
Cuando falla la solicitud a la API
paginator.ts:156
▸ next(): Promise<Paginator<T>>
Obtiene la página siguiente como una nueva instancia
Este método crea una nueva instancia de Paginator que comienza en la siguiente página,
sin afectar el estado del Paginator actual.
Promise<Paginator<T>>
Nueva instancia de Paginator para la siguiente página
Ejemplo
const followers = await client.users.getFollowers('783214');
await followers.fetchNext(); // Obtener la primera página
if (!followers.done) {
const nextPage = await followers.next(); // Obtener la siguiente página como una nueva instancia
console.log(followers.items.length); // Aún la primera página
console.log(nextPage.items.length); // La segunda página
}
paginator.ts:211
▸ fetchPrevious(): Promise<void>
Recupera la página anterior (si se admite)
Promise<void>
paginator.ts:225
▸ previous(): Promise<Paginator<T>>
Obtiene la página anterior como una nueva instancia
Promise<Paginator<T>>
paginator.ts:260
▸ fetchLast(count): Promise<void>
Obtiene hasta el número especificado de elementos adicionales
Promise<void>
paginator.ts:274
▸ reset(): void
Reinicia el paginador a su estado inicial
void
paginator.ts:288
▸ [iterator](): Iterator<T, any, undefined>
Iterador de todos los elementos obtenidos
Iterator<T, any, undefined>
paginator.ts:303
▸ [asyncIterator](): AsyncIterator<T, any, undefined>
Iterador asíncrono que recupera páginas automáticamente
AsyncIterator<T, any, undefined>
AsyncIterable.[asyncIterator]
paginator.ts:312