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

180
Vistas
Java S. No se puede leer la propiedad 'filtro' de undefined

Tengo esa pregunta porque ya no sé qué hacer. Tengo un BOT en Sugerencia para un determinado canal. Cuando ejecuto el bot a través de Visual Studio Code, el bot se ejecuta y todo funciona. Pero tan pronto como cargo un arranque en heroku.com, el programa de repente escribe un error:

archivos = archivos.filtro(f => f.terminaCon(".js"))

ingrese la descripción de la imagen aquí

Alguien podría ayudarme, sería muy feliz. Que tengas un lindo día

Index.js está aquí:

 client.once('ready', () => { console.log('Tutorial Bot is online!'); }); client.commands = new Discord.Collection() const fs = require("fs") fs.readdir("./commands/", (error, files) => { files = files.filter(f => f.endsWith(".js")) files.forEach(f => { const command = require(`./commands/${f}`) client.commands.set(command.name, command) console.log(`Command ${command.name} was loaded!`) }); }); client.on("message", message => { if (message.author.bot) return; if (message.channel.type === "dm") return; if (!message.content.startsWith(config.prefix)) return; const args = message.content.slice(config.prefix.length).split(" ") const command = args.shift() const cmd = client.commands.get(command) if (cmd) { cmd.run(client, message, args) } else return; }); bot.login(config.token);

Sugerir.js está aquí

 const { MessageEmbed } = require("discord.js"); module.exports = { name: "suggest", aliases: [], description: "Make a suggestion and have the community vote", category: "utility", usage: "suggest <suggestion>", run: async (client, message, args) => { let suggestion = args.slice(0).join(" "); let SuggestionChannel = message.guild.channels.cache.find(channel => channel.name === "suggestions"); if (!SuggestionChannel) return message.channel.send("Please create a channel named suggestions before using this command!"); const embed = new MessageEmbed() .setTitle("New Suggestion") .setDescription(suggestion) .setColor("RANDOM") .setFooter(`${message.author.tag} | ID: ${message.author.id}`) .setTimestamp() SuggestionChannel.send(embed).then(msg => { msg.react("👍🏼") msg.react("👎🏼") message.channel.send("Your suggestion has been sent!"); }); } }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Olvidó verificar si hay errores en su devolución de llamada. En caso de error, los files no estarán undefined , lo que dará como resultado el error que ha observado. Así que deberías hacer algo como:

 fs.readdir("./commands/", (error, files) => { if(error) { // handle error } else { files = files.filter(f => f.endsWith(".js")) files.forEach(f => { const command = require(`./commands/${f}`) client.commands.set(command.name, command) console.log(`Command ${command.name} was loaded!`) }); } });
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