Hoy estaba codificando un pequeño bot de música discord.js, pero luego recibí un error y realmente no sé cómo solucionarlo. ¿Alguien sabe una solución?
y este es mi codigo
const fs = require('fs'); const { discord, Client, Intents } = require('discord.js'); const myIntents = new Intents(); myIntents.add(Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_VOICE_STATES); const client = new Client({ intents: myIntents }); const { Player } = require('discord-player'); client.player = new Player(client); client.config = require('./config/bot'); client.emotes = client.config.emojis; client.filters = client.config.filters; client.commands = new discord.Collection(); fs.readdirSync('./commands').forEach(dirs => { const commands = fs.readdirSync(`./commands/${dirs}`).filter(files => files.endsWith('.js')); for (const file of commands) { const command = require(`./commands/${dirs}/${file}`); console.log(`Loading command ${file}`); client.commands.set(command.name.toLowerCase(), command); }; }); const events = fs.readdirSync('./events').filter(file => file.endsWith('.js')); const player = fs.readdirSync('./player').filter(file => file.endsWith('.js')); for (const file of events) { console.log(`Loading discord.js event ${file}`); const event = require(`./events/${file}`); client.on(file.split(".")[0], event.bind(null, client)); }; for (const file of player) { console.log(`Loading discord-player event ${file}`); const event = require(`./player/${file}`); client.player.on(file.split(".")[0], event.bind(null, client)); }; client.login(client.config.discord.token);El error se origina en esta línea en particular
client.commands.set(command.name.toLowerCase(), command);¿Por qué? Debido a esto:
const { discord, Client, Intents } = require('discord.js'); Entonces, está tratando de desestructurar la discord de discord.js que no está disponible para el módulo, como puede ver a continuación, el módulo discord.js tiene las siguientes funciones y propiedades:
Ahora, si desea desestructurarlo , debe obtener la Collection en lugar de discord y luego más discord.Collection . En la parte superior de su archivo, está desestructurando algunos componentes del módulo discord.js, ¡así que también necesita desestructurar la Collection ! al igual que:
const { Client, Intents, DiscordAPIError, Collection } = require('discord.js'); // then you may define it like so client.commands = new Collection() // then you may further use client.commands.set(command.name.toLowerCase(), command); Esto sería absolutamente válido como se puede ver aquí: