Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

214
Vistas
Vuelta a la solución El límite de obtención de mensajes de 100 ya no funciona después de 1 día

Ayer creé un bot de discordia a partir de esta publicación para exportar campos de incrustaciones y funcionaba bien, pero no funciona hoy. El error que recibo es TypeError: messages.array is not a function . Intenté desinstalar el nodo y volver a instalarlo, pero fue en vano. Le envié el archivo a un amigo para que lo ejecutara y funcionó perfectamente, por lo que parece ser un problema con mi máquina. También traté de ejecutarlo en mi servidor de Windows y no vi ningún error, pero el bot falló al exportar los campos (no tengo la intención de usar mi servidor para ejecutar el bot, solo lo uso para solucionar problemas). ¿Alguien ha visto este error antes y / o tiene una solución?

Error más detallado (un mensaje):

"xxxx@xxxx-mbp incrustar bot % nodo principal /Usuarios/xxxx/Descargas/incrustar bot/main.js:24 sum_messages.push(...messages.array()); ^

TypeError: Messages.array no es una función en many_of_messages_getter (/Users/xxxx/Downloads/embed bot/main.js:24:39) en processTicksAndRejections (node:internal/process/task_queues:96:5) en async Client. (/Usuarios/xxxx/Descargas/incrustar bot/main.js:36:20)"

 async function lots_of_messages_getter(channel, limit = 10000) { const sum_messages = []; let last_id; while (true) { const options = { limit: 100 }; if (last_id) { options.before = last_id; } const messages = await channel.messages.fetch(options); sum_messages.push(...messages.array()); last_id = messages.last().id; if (messages.size != 100 || sum_messages >= limit) { break; } } return sum_messages;

}

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Messages es una colección , no hay un método de array para ese objeto.

De acuerdo con la documentación , puede convertirlo en una matriz regular y luego usar el operador de propagación.

 sum_messages.push(...Array.from(messages));
about 4 years ago · Juan Pablo Isaza Denunciar

0

Cambié "matriz" a "valores" y ahora funciona perfectamente. ¡Gracias a todos los que ayudaron!

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda