#javascript #node.js #discord #discord.js
#javascript #node.js #Discord #discord.js
Вопрос:
Итак, я переключился на module.exports для своего бота, и для команды help я получил сообщение об ошибке: «Невозможно уничтожить свойство «команды» message.bot, поскольку оно не определено»
Я никогда раньше не сталкивался с этой ошибкой, поэтому не знаю, как ее исправить.
Также я скопировал расширенный код обработчика команд из официального discord.js руководство, и оно по-прежнему не работает.
const Discord = require('discord.js')
module.exports = {
name: 'help',
description: 'List all of my commands or info about a specific command.',
aliases: ['commands'],
usage: '!help | !help <command name>',
cooldown: 1,
async execute(message, args, bot) {
const data = []
const { commands } = message.bot;
if(!args[1]){
let embed = new Discord.MessageEmbed()
.setTitle('Commands')
.addField('Fun 🎲', Wide)
.addField('Games 🎮', funay)
.addField('Information 📙', inf)
.addField(`Images 🖼`, imagess)
.addField('Moderation 👩⚖️', mod)
.addField('Giveaway🎉', gib)
.addField('Other', other)
.setColor('RANDOM')
.setThumbnail(message.author.displayAvatarURL())
message.channel.send(embed)
} else {
const name = args[1].toLowerCase()
const cmd = commands.get(name) || commands.find(c => c.aliases amp;amp; c.aliases.includes(name));
if (!cmd) {
return message.reply('that's not a valid command!');
}
const embedd = new Discord.MessageEmbed()
.setTitle(`Name: ${cmd.name}`)
.addField('Aliases', `${cmd.aliases.join(", ")}`)
.addField('Description', `${cmd.description}`)
.addField('Usage', data.push `${cmd.usage}`)
.setFooter(`Cooldown: ${cmd.cooldown || 3} second(s)`)
.setColor("RANDOM")
message.channel.send(embedd);
}
},
}
Комментарии:
1. Строка
const { commands } = message.bot;
с ошибкой, потому что message.bot не определен.
Ответ №1:
Попробуйте изменить message.bot
на message.client
Комментарии:
1. Это не имеет значения. В объекте сообщения нет свойства с именем «bot». Пожалуйста, ознакомьтесь с документацией .