使用 discord.js 收集对消息做出反应的用户

Posted

技术标签:

【中文标题】使用 discord.js 收集对消息做出反应的用户【英文标题】:Collecting users who reacted to a message using discord.js 【发布时间】:2018-04-03 06:58:19 【问题描述】:

我正在尝试收集对特定消息做出反应的所有用户。 我的代码

client.on('messageReactionAdd', (reaction, user) => 
    if(reaction.emoji.name === "✅") 
    console.log(reaction.emoji.users);

但它返回未定义。如果我使用“reaction.emoji”它会返回

ReactionEmoji 
  reaction: 
   MessageReaction 
     message: 
      Message 
        channel: [Object],
        id: '371695165498458115',
        type: 'DEFAULT',
        content: 'bb',
        author: [Object],
        member: [Object],
        pinned: false,
        tts: false,
        nonce: '371695172469129216',
        system: false,
        embeds: [],
        attachments: Collection ,
        createdTimestamp: 1508689433217,
        editedTimestamp: null,
        reactions: [Object],
        mentions: [Object],
        webhookID: null,
        hit: null,
        _edits: [] ,
     me: true,
     count: 1,
     users: Collection  '370300235030986752' => [Object] ,
     _emoji: [Circular] ,
  name: '✅',

我正在尝试获取 users: Collection '370300235030986752' => [Object] , 部分。提前致谢。

【问题讨论】:

【参考方案1】:

根据docs,它只是reaction.users

client.on('messageReactionAdd', (reaction, user) => 
    if(reaction.emoji.name === "✅") 
        console.log(reaction.users);
    
);

【讨论】:

谢谢。出于某种原因,我认为它是 react.emoji.users。

以上是关于使用 discord.js 收集对消息做出反应的用户的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法对使用 discord.js 发送的每条消息做出反应

(discord.js) 如何提及对机器人消息做出反应的用户?

Discord js v12 如果有人对嵌入做出反应,则发送消息

如何获取对特定消息做出反应的用户的不和谐 ID discord.js

当用户对消息做出反应时,机器人会在 discord.js 中发送另一条消息

向每个对 discord.js 中的消息做出反应的用户发送 dm