Saltar al contenido principal
Paginador de la X API con funcionalidades avanzadas Esta clase ofrece soporte completo de paginación 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 de paginación y recuentos
  • Gestión de errores y detección de límites de uso
  • Compatibilidad con paginación hacia adelante y hacia atrás
Ejemplo
// Iteración automática
const followers = await client.users.getFollowers('783214');
for await (const follower of followers) {
  console.log(follower.username);
}

// Control manual
const followers = await client.users.getFollowers('783214');
await followers.fetchNext();
console.log(followers.items.length); // Cantidad de seguidores
console.log(followers.meta.next_token); // Token de página siguiente

// Comprobar estado
if (!followers.done) {
  await followers.fetchNext();
}

Parámetros de tipo

NombreDescripción
TTipo de elementos que se están paginando

Jerarquía

Implementa

  • AsyncIterable<T>

Constructores

constructor

new Paginator<T>(fetchPage): Paginator<T> Crea una nueva instancia de Paginator

Parámetros de tipo

Nombre
T

Parámetros

NombreTipoDescripción
fetchPage(token?: string) => Promise<PaginatedResponse<T>>Función que recupera una página de datos dado un token de paginación

Devuelve

Paginator<T>

Definido en

paginator.ts:87

Accesores

items

get items(): T[] Obtener todos los elementos obtenidos

Devuelve

T[]

Definido en

paginator.ts:94

meta

get meta(): any Obtener los metadatos de paginación actuales

Devuelve

any

Definido en

paginator.ts:101

includes

get includes(): undefined | Record<string, any> Obtener los includes actuales

Valores de retorno

undefined | Record<string, any>

Definido en

paginator.ts:108

errors

get errors(): undefined | any[] Obtener los errores actuales

Valores de retorno

undefined | any[]

Definido en

paginator.ts:115

finalizado

get finalizado(): boolean Comprueba si la paginación ha finalizado

Devuelve

boolean

Definido en

paginator.ts:122

rateLimited

get rateLimited(): boolean Comprueba si se alcanzó el límite de solicitudes

Devuelve

boolean

Definido en

paginator.ts:129

Métodos

fetchNext

fetchNext(): Promise<void> Obtiene la siguiente página y agrega elementos a la instancia actual Este método obtiene la siguiente página de data y agrega los elementos a la instancia actual del paginador. Actualiza el estado de paginación y la meta.

Devuelve

Promise<void> Ejemplo
const followers = await client.users.getFollowers('783214');
await followers.fetchNext(); // Obtener la primera página
console.log(followers.items.length); // Número de seguidores

if (!followers.done) {
  await followers.fetchNext(); // Obtener la segunda página
  console.log(followers.items.length); // Total de seguidores en todas las páginas
}
Lanza Cuando falla la solicitud a la API

Definido en

paginator.ts:153
next(): Promise<Paginator<T>> Obtener la página siguiente como una nueva instancia Este método crea una nueva instancia de Paginator que parte de la página siguiente, sin afectar el estado del paginador actual.

Devuelve

Promise<Paginator<T>> Nueva instancia de paginador 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 nueva instancia
  console.log(followers.items.length); // Aún la primera página
  console.log(nextPage.items.length); // Segunda página
}

Definido en

paginator.ts:208

fetchPrevious

fetchPrevious(): Promise<void> Recupera la página anterior (si es compatible)

Devuelve

Promise<void>

Definido en

paginator.ts:222
previous(): Promise<Paginator<T>> Obtener la página anterior como una nueva instancia

Devuelve

Promise<Paginator<T>>

Definido en

paginator.ts:257

fetchLast

fetchLast(count): Promise<void> Recupera hasta la cantidad especificada de elementos adicionales

Parámetros

NombreTipo
countnumber

Devuelve

Promise<void>

Definido en

paginator.ts:271

reset

reset(): void Restablece el paginador a su estado inicial

Devuelve

void

Definido en

paginator.ts:285

[iterator]

[iterator](): Iterator<T, any, undefined> Iterador de todos los elementos recuperados

Devuelve

Iterator<T, any, undefined>

Definido en

paginator.ts:300

[asyncIterator]

[asyncIterator](): AsyncIterator<T, any, undefined> Iterador asíncrono que recupera páginas automáticamente

Devuelve

AsyncIterator<T, any, undefined>

Implementación de

AsyncIterable.[asyncIterator]

Definido en

paginator.ts:309