#javascript #node.js #discord #discord.js
#javascript #node.js #Discord #discord.js
Вопрос:
вот код =
Я использовал обработчик команд, я не знаю, почему это происходит. Я новичок в программировании
если кто-нибудь может мне помочь и, пожалуйста, быстро
пожалуйста, исправьте эту ошибку. или помогите мне исправить эту ошибку
tst.js =
module.exports = {
name: 'tst',
description: "this is a ping command!",
execute(message, args, Discord) {
const embed = new Discord.MessageEmbed()
.setAuthor(message.author.username)
.setDescription("testcmd")
.setColor("#3535353")
.addField("Usuario", '${message.author.username}#${message.author.discriminator}')
.addField("ID", message.author.id)
.addField("JunayedRafi", message.author.createdAt);
message.channel.send(embed);
}
}
index.js =
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = '-';
const fs = require('fs');
client.commands = new Discord.Collection();
const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
for(const file of commandFiles){
const command = require(`./commands/${file}`);
client.commands.set(command.name, command);
}
client.once('ready', () => {
console.log('Muricraft is online!');
});
client.on('message', message =>{
if(!message.content.startsWith(prefix) || message.author.bot) return;
const args = message.content.slice(prefix.length).split(/ /);
const command = args.shift().toLowerCase();
if(command === 'ping'){
client.commands.get('ping').execute(message, args);
} else {
if(command === 'tst'){
client.commands.get('tst').execute(client, message, args, Discord)
}
}
});
client.login('token');
вот ошибка = (если я набираю -tst в discord, появляется эта ошибка
PS E:SOFTOWER INFODiscord botMuricraft> node .
Muricraft is online!
E:SOFTOWER INFODiscord botMuricraftcommandstst.js:5
const embed = new Discord.MessageEmbed()
^
TypeError: Discord.MessageEmbed is not a constructor
Комментарии:
1. Какая версия discord.js вы употребляете?
2. @ArunKumarMohan собирался спросить то же самое.
3. @Арун Кумар Мохан новая версия discord.js
4. @JunayedRafi Ваш код должен работать нормально, если вы используете v12.
Ответ №1:
Сначала вам нужно импортировать Discord
пакет перед использованием MessageEmbed()
. Затем ваш скрипт должен начинаться так
const Discord = require('discord.js');
module.exports = {
name: 'tst',
//The rest of the code
Или вызывайте MessageEmbed
конструктор только так
const { MessageEmbed: Embed } = require('discord.js'); //Embed is the name of variable
module.exports = {
name: 'tst',
//The rest of the code
С помощью последнего варианта вы можете создать новую вставку, подобную этому примеру
const embed = new Embed().setDescription("Hello World");
Надеюсь, я помог 🙂