Tengo un bot de Discord y hay un problema con el comando llamado política de privacidad en este bot, le pregunté a muchas personas y dijeron que no sabían.
Versión de Node.js: 16.13.2 Versión de Discord.js: 13.6.0
PRINCIPAL
client.commands = new Collection(); const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js')); const eventFiles = fs.readdirSync('./events').filter(file => file.endsWith('.js')); for (const file of commandFiles) { const command = require(`./commands/${file}`); client.commands.set(command.name, command); }DOMINIO
module.exports = { name: 'gizlilik', description: 'gizlilik politikası', execute(message, args) { const Discord = require("discord.js") const gizlilik = new Discord.MessageEmbed() .setTitle("Hextro Gizlilik Politikası") .setDescription("Gizlilik Politikasına aşağıdaki butondan ulaşabilirsiniz.") .setColor("RANDOM") const buton = new Discord.MessageButton() .setLabel("Politika") .setStyle("url") .setURL("https://github.com/Husum0/Hextro-Gizlilik-Politikasi/blob/main/gizlilik.md"); let row = new Discord.MessageActionRow() .addComponents(buton) message.channel.send({ content: 'Pong!', embeds: [gizlilik], components: [row] }); }, };ERROR
Rechazo de promesa no controlado: DiscordAPIError: componentes de cuerpo de formulario no válidos [0].components[0].style: este campo es obligatorio en RequestHandler.execute (C:\Users\Administrator\Desktop\hexiye\node_modules\discord.js\src\rest \RequestHandler.js:350:13) en processTicksAndRejections (nodo:internal/process/task_queues:96:5) en async RequestHandler.push (C:\Users\Administrator\Desktop\hexiye\node_modules\discord.js\src\rest \RequestHandler.js:51:14) en async TextChannel.send (C:\Users\Administrator\Desktop\hexiye\node_modules\discord.js\src\structures\interfaces\TextBasedChannel.js:175:15) { método: ' post', ruta: '/channels/931267478292680769/messages', código: 50035, httpStatus: 400, requestData: { json: { content: 'Pong!', tts: false, nonce: undefined, incrustaciones: [Array], componentes : [Array], nombre de usuario: indefinido, url_avatar: indefinido, menciones_permitidas: indefinido, banderas: indefinido, referencia_mensaje: indefinido, adjuntos: indefinido, sticker_ids: indefinido }, archivos: [] } }
url no es un estilo válido para configurar su inserción, en su lugar, debe ser LINK - consulte la documentación de discord.js aquí .
su comando debería terminar luciendo así:
module.exports = { name: 'gizlilik', description: 'gizlilik politikası', execute(message, args) { const Discord = require('discord.js'); const gizlilik = new Discord.MessageEmbed() .setTitle('Hextro Gizlilik Politikası') .setDescription('Gizlilik Politikasına aşağıdaki butondan ulaşabilirsiniz.') .setColor('RANDOM'); const buton = new Discord.MessageButton() .setLabel('Politika') .setStyle('LINK') .setURL('https://github.com/Husum0/Hextro-Gizlilik-Politikasi/blob/main/gizlilik.md'); let row = new Discord.MessageActionRow().addComponents(buton); message.channel.send({ content: 'Pong!', embeds: [gizlilik], components: [row] }); } };Para cuando dice que no tiene validez para el cuerpo, todo lo que significa es actualizar su aplicación. Vaya a su tienda de aplicaciones, busque discord y actualice la aplicación.