Discord新用户入群Embed头像缺失问题技术求助
解决Discord欢迎Embed不显示用户头像的问题
嘿,我看到你在做新成员欢迎Embed时遇到了头像不显示的问题,这个小细节我之前也踩过坑,其实问题出在头像URL的获取方式上!
问题原因
你代码里用的member.avatarURL是错误的:
- 首先,Discord.js里获取用户头像的正确属性/方法是挂载在
user对象上的,不能直接从member对象调用; - 其次,
displayAvatarURL()是一个方法,需要加括号调用,它还支持传入参数来控制头像的格式、尺寸等细节。
修改后的代码
把你的Embed代码改成这样就可以正常显示用户头像了:
const embed = new MessageEmbed() .setColor('#00bfff') .setTitle(`ώ€ℓȼ๏ʍ€, ${member.user.tag} `) .setDescription(`Member #${member.guild.memberCount}\nInvited By ${usedInvite.inviter.tag}`) .setThumbnail(member.user.displayAvatarURL({ dynamic: true, size: 256 }))
额外说明
- 我把
setImage改成了setThumbnail,因为欢迎Embed里用小头像作为缩略图会更贴合场景,如果你坚持要用大图展示头像,换回setImage也完全可行; dynamic: true参数会自动识别用户的动态头像(GIF格式),如果用户没有设置动态头像,会自动返回静态头像;size: 256是设置头像的尺寸,你可以根据需求改成128、512等2的幂数;- 记得确保
usedInvite已经正确获取到了邀请信息,不然usedInvite.inviter.tag可能会触发报错,可以加个简单的判断来处理异常情况。
内容的提问来源于stack exchange,提问作者Ariel
相关产品推荐
相关产品推荐

