我正在制作一个discord bot,我决定添加一个用户信息命令。我这样做了,但问题是.setThumbnail
命令不起作用(所以我看不到图片(,并且我想显示我的成员的角色,这是我使用member.roles
函数完成的。但是,它在嵌入中说"未定义",这里是我的代码供参考。我尝试只使用user,但在嵌入的user Roles下仍然未定义。提前感谢回答问题的人!
const embed = new Discord.MessageEmbed()
var user = message.mentions.users.first();
var member = message.mentions.users.first(user);
if(!args[1]) return message.reply('Apologies! Please specify a particular member!');
embed.setTitle('User Information')
embed.addField('Username', user.username)
embed.addField('User ID', user.id)
embed.addField('User Tag', user.tag)
embed.addField('User Roles', member.roles)
embed.setColor(0x00FF93)
embed.setThumbnail(user.displayAvatarURL)
embed.setFooter('Generated by Salty!')
message.channel.send(embed);
break;
在discord.js v12.x中,user.displayAvatarURL
是一个函数。访问此链接了解更多信息。。。
embed.setThumbnail(user.displayAvatarURL())
此外,member.roles
是一个管理器,要获得成员的角色,请使用member.roles.cache
。这个问题已经在这里被问了
.addField('Roles:', member.roles.cache.map(r => `${r}`).join(' | '))
对于帐户创建,您可以使用user.createdAt
获取时间戳
.addField('Created at:', moment.utc(user.createdAt).format('dddd, MMMM Do YYYY, HH:mm:ss'))
希望得到帮助!