Discord.js avatarURL的问题

时间:2019-10-07 05:07:26

标签: javascript bots discord discord.js

discord.js的.avatarURL未显示任何图像。

我正在尝试为我的不和谐机器人发出命令,让某人ping通另一个人并使该机器人显示其个人资料图片。我很快就找到了.avatarURL作为解决方案,但是它似乎根本没有显示任何图像。任何帮助将不胜感激。

 if (message.content.startsWith(`${prefix}showpfp`)) {
        let embed = new Discord.RichEmbed().setTitle(tMember.displayName + "'s Profile Picture").setImage(tMember.avatarURL).setColor('#add8e6')

        message.channel.send(embed);
    }

键入命令_showpfp @user后,机器人将以

响应
user's Profile Picture

就这样...

1 个答案:

答案 0 :(得分:1)

问题是tMember没有属性avatarURL。在您的评论中,您说您通过执行tMember获得了message.mentions.members.first()的值,但是message.mentions.membersGuildMembers的集合。 GuildMember没有属性avatarURL

但是,类User确实具有属性avatarURL。因此,您需要先获取该成员作为User的实例。幸运的是,类GuildMember具有一个属性.user,它可以完成此操作。

因此,解决问题的方法是将setImage的参数更改为tMember.user.avatarURL,如下所示。

if (message.content.startsWith(`${prefix}showpfp`)) {
  let embed = new Discord.RichEmbed().setTitle(tMember.displayName + "'s Profile Picture").setImage(tMember.user.avatarURL).setColor('#add8e6')

  message.channel.send(embed);
}