我的stats
命令有点问题,即使我将undefined
设为嵌入属性。
if (command == "stats") {
let mcount = bot.users.size;
let scount = bot.guilds.size;
let tcount = bot.channels.filter(c => c.type === 'text').size;
let vcount = bot.channels.filter(c => c.type === 'voice').size;
let embed = new Discord.RichEmbed()
.setDescription(`:white_check_mark: Statistics of Tommy`)
.setColor("2c2f33")
.addField('**Users:**`' + `${mcount}` + '`')
.addField('**Servers:**`' + `${scount}` + '`')
.addField('**Text channels:**`' + `${tcount}` + '`')
.addField('**Voice channels:**`' + `${vcount}` + '`');
message.channel.send({
embed
});
}
答案 0 :(得分:3)
您的示例在大多数情况下都有效,但是它在与字段名称相同的行上显示值,并且undefined
文本出现在每个字段名称下方。
原因是addField
方法有第二个参数,用于将文本(或字段值)设置在字段名称下方。
在您的示例中,对addField的调用可以更改为:
.addField('**Users:**', `${mcount}`)
.addField('**Servers:**', `${scount}`)
.addField('**Text channels:**', `${tcount}`)
.addField('**Voice channels:**', `${vcount}`)
我发现this tutorial for RichEmbed and addField帮助我了解其用法。