DiscordJS Отправляет встраивание в DM

#javascript #discord #embed

Вопрос:

Я работаю над командой для добавления конкретным пользователям встраивания, которое является меню справки в моем проекте. Я успешно отправил обычные сообщения, но я не могу понять, как отправить встраивание в DM!, Я прочитал, что ему нужен другой тип встраивания.

 module.exports = {
    name: 'costietare',
    description: "This is a help command.",
    async execute(client, message, args, Discord) {
        

   
        message.delete({timeout: 10});
        let dUser =
        message.guild.member(message.mentions.users.first()) ||
        message.guild.members.get(args[0]);
        if (!dUser) return message.channel.send("Can't find user!");
        if (!message.member.hasPermission('ADMINISTRATOR'))
        return message.reply("Insufficient Permissions!");


        let embed = new Discord.MessageEmbed()
        .setTitle('General Information')
        .setColor('YELLOW')
        .addFields(
            {name: 'Developer', value: '[m1](https://steamcommunity.com/id/catshvh)', inline:false},
            {name: '!commands', value: 'More Commands amp; Usage for the bot', inline:true},
            {name: 'BUY/Support', value: "[Click here to buy](https://discord.gg/4Qt3238jCy)", inline:true},
        )
        .setTimestamp()
    
 
        dUser.send(`Sunt tare, stiu`); << Here is the normal message that its perfectly fine and 
        dUser.send(`${embed}`); << this reply with **[object Object]**

        message.author.send(
            `${message.author} You have sent your message to ${dUser}`
           );    
        }

    
}
 

Комментарии:

1. на какой версии discordjs вы находитесь

Ответ №1:

Предполагая, что вы используете discord версии 12 или менее, используйте это для отправки вложений

 const embed = new Discord.MessageEmbed().setDescription('test');
message.channel.send(embed);
// for users
dUser.send(embed); // 
 

если вы находитесь на discord версии 13

 const embed = new Discord.MessageEmbed().setDescription('test');
message.channel.send({ embeds:  });
//for users (dms)
dUser.send({ embeds:  });
 

он отправляет область объекта , известную как [объект объекта], потому что вы обертываете объект встраивания внутри литералов шаблона ${} , просто передайте объект встраивания в качестве обычного параметра, и он должен работать