从discordjs中的成员那里获取头像

时间:2021-07-11 22:03:52

标签: discord.js

我仍在学习 Discord 编程机器人的来龙去脉,我需要一点帮助。 我有一个命令来检查是否提到了用户。如果是,我通过 message.guild.members.fetch(user.id) 获得成员。如果没有提到用户,我只是使用 message.member 来获取成员数据。接下来,我尝试使用 member.guild.user.displayAvatarURL({ format: 'jpg' }) 获取成员的头像 URL。但是,这是我的代码失败的地方。似乎此时没有定义用户属性。所以,我的问题是如何使用一种方法为提到的用户和消息作者可靠地检索用户的头像?

1 个答案:

答案 0 :(得分:0)

正如@esqew 提到的

<块引用>

您能否指出支持您隐式声明 member.guild 对象应具有 user 属性的权威来源?当即使 examples in the discord.js 显示您只需使用 message.author.displayAvatarURL()

即可获取此数据时,为什么要使用这种迂回逻辑

所以你只需要替换你当前的代码

message.guild.members.fetch(user.id)
message.member
member.guild.user.displayAvatarURL({ format: 'jpg' })

用这行代码 message.author.displayAvatarURL(); 要将图片放入变量中,只需执行此操作 const picture = message.author.displayAvatarURL();

<块引用>

此代码将返回作者 url 以获取提及的内容

        user = message.mentions.members.first().user;
        picture = user.avatarURL()
        message.channel.send(picture)
    }

然后如果您想发送作者网址,请执行以下操作

message.channel.send(picture);
// Or reply
message.channel.reply(picture);
相关问题