DiscordJS 发送嵌入 DM

Posted

技术标签:

【中文标题】DiscordJS 发送嵌入 DM【英文标题】:DiscordJS Send Embed in DM 【发布时间】:2021-11-27 14:55:54 【问题描述】:

我正在开发一个命令,以向特定用户发送一个嵌入的命令,该命令是我项目中的帮助菜单。我成功发送了正常消息,但我无法了解如何在 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 & 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`
           );    
        

    

【问题讨论】:

你使用的是哪个 discordjs 版本 【参考方案1】:

假设您使用的是不和谐版本 12 或更低版本,请使用它来发送嵌入

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

如果您使用的是不和谐版本 13

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

它发送对象范围又名 [object Object],因为您将嵌入对象包装在模板文字 $ 中,只需将嵌入对象作为普通参数传入,它应该可以工作

【讨论】:

以上是关于DiscordJS 发送嵌入 DM的主要内容,如果未能解决你的问题,请参考以下文章

如何在 discordjs-commando 中编辑/替换嵌入

如何找到特定用户 discordjs 的最后发送消息

DiscordJS 编辑现有嵌入

如何在 DiscordJS 嵌入消息中使用本地文件作为缩略图?

在聊天 discordjs 之间复制嵌入和修改

Discord JS - 如何对同一个嵌入做出多次反应?