使用discord.js获取有关提到的用户/消息作者的信息

时间:2020-07-28 14:39:35

标签: javascript discord.js

**• Server Roles:** <@&${user._roles.join('> <@&')}>, ^^无法读取未定义的属性“ join” 我使用了message.member._roles.join('> <@&')}>`, 但是它总是显示编写命令的用户的角色,而不是您提到的用户。

1 个答案:

答案 0 :(得分:0)

Message.member是发送此消息的用户。 如果要获得提及的公会成员,则需要使用message.mentions.members 它返回提到的用户的集合。
您的代码应如下所示:

// To make sure that only one member is mentioned
if(message.mentions.members.size == 1){
    const roles = `<@&${message.mentions.members.first()._roles.join('> <@&')}>`
    message.channel.send(roles);
}

我建议先发送空消息,然后编辑其内容以添加这些提及内容,以避免对整个服务器执行ping操作。