【问题标题】:How to get user id from collection如何从集合中获取用户 ID
【发布时间】:2020-07-13 03:00:25
【问题描述】:

我正在尝试为对消息做出反应的用户赋予角色。我在其中面临一些问题。 我无法获取用户的 ID 或用户名。请在下面找到代码:

               let suser = message.member;


               const filterv = (reaction, userv) => reaction.emoji.name === '✅' && userv.id != suser.id && userv.id != "692755575418650654"

               m.awaitReactions(filterv, {max: 1})
               .then(cc => {

                console.log(cc.forEach((reaction => reaction.users.forEach(console.log))))    
                m.delete()

               })
               .catch(console.log);

以上代码返回undefined 我应该怎么做而不是 console.log(cc.forEach((reaction => reaction.users.forEach(console.log)))) 从地图中获取 id(s)

users:
Collection [Map] {
  },
  '681898825463627866' => User {
    id: '681898825463627866',
    username: 'ayetest',
    discriminator: '2219',
    avatar: null,
    bot: false,
    lastMessageID: null,
    lastMessage: null
  }
}

我正在尝试做这样的事情(下面的代码),但无法从集合中获取用户,而是获取 userv 未定义

let srole = message.mentions.roles.first() || message.guild.roles.find(r => r.name === args[0])

let suser = message.member;

const filterv = (reaction, userv) => reaction.emoji.name === ':white_check_mark:' && userv.id != suser.id && userv.id != "692755575418650654"

m.awaitReactions(filterv, {max: 1})
.then(collection => {
userv.addRole(srole.id) 
m.delete()
})
.catch(console.log);

【问题讨论】:

    标签: javascript node.js discord.js


    【解决方案1】:

    我认为使用createReactionCollector 而不是awaitReactions 会更轻松。

    【讨论】:

      猜你喜欢
      • 2021-07-17
      • 1970-01-01
      • 2021-12-06
      • 2022-07-13
      • 2021-07-12
      • 1970-01-01
      • 2023-03-02
      • 2020-12-27
      • 1970-01-01
      相关资源
      最近更新 更多