Discord.JS 嵌入问题

Posted

技术标签:

【中文标题】Discord.JS 嵌入问题【英文标题】:Discord.JS problems with making an embed 【发布时间】:2020-12-05 04:48:14 【问题描述】:

所以我一直在尝试将这个“serverlist”命令嵌入到其中,但它不起作用。任何人都可以执行该命令,但如果 ID 与用户匹配,那么它将显示机器人所在的所有服务器,以及成员计数、服务器 ID 和服务器名称。 当前代码(描述不起作用,这就是我需要帮助的):

client.on('message', message => 
    if(message.content.startsWith(prefix + "serverlist")) 
        message.channel.send(`__Total servers: $client.guilds.cache.size__`)
        if(message.author.id === '211180841693347840') 
        let embed = new Discord.MessageEmbed()
        .setTitle('The bot is in these servers:')
        .setDescription(client.guilds.cache.forEach((guild) => 
            (`**$guild.name** with $guild.memberCount members. ID: \`$guild.id\``)
        ))
        message.channel.send(embed)

    
)

【问题讨论】:

你得到什么错误? 描述为“未定义” 【参考方案1】:

有一个let 等于您的服务器列表。

在这个例子中,我把所有的服务器都映射成一个字符串

let servers = client.guilds.cache.map((server) => 
  return `**$server.name** - \`$server.memberCount\` : *$server.id*`
)

然后将其注入到您的描述中

.setDescription(servers)

请记住,如果最终结果超过了嵌入的最大字符大小,您将收到 Invalid Form Body 错误

【讨论】:

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

Discord.js 代码无法发送嵌入消息 [关闭]

Discord.js 嵌入随机图像

Discord.JS 嵌入问题

Discord.js 本地图像嵌入

Discord.js 机器人使用数组中的加权随机选择嵌入

discord.js 如何编辑/更新嵌入?