【问题标题】:Get information about the mentioned user / message author with discord.js使用 discord.js 获取有关提到的用户/消息作者的信息
【发布时间】:2020-11-18 01:08:05
【问题描述】:

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

【问题讨论】:

    标签: javascript discord.js


    【解决方案1】:

    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 整个服务器。

    【讨论】:

    • (node:9764) UnhandledPromiseRejectionWarning: TypeError: Cannot read property '_roles' of undefined
    • 1.您是否完全使用了我的代码? 2. 你在加入_roles 数组之前检查过message.mentions.members 的大小吗? 3. 你使用最新版本的 od discord.js 吗? (12.2.0) 您可以使用 npm list 命令进行检查
    • 我的命令应该在更大的命令(用户信息)中显示角色,我只需要设法显示标记的用户角色或消息作者的角色。
    • 即使你提到某人也会出现这个错误?如果可能的话,你能回答我上面评论中的问题吗?
    • 我希望它也适用于 message.author :(
    猜你喜欢
    • 2021-01-09
    • 2020-12-08
    • 2021-05-12
    • 1970-01-01
    • 2018-03-20
    • 2021-12-05
    • 2022-12-09
    • 2021-09-14
    • 2021-07-18
    相关资源
    最近更新 更多