【发布时间】:2020-10-20 02:29:52
【问题描述】:
我正在尝试创建一个命令,该命令将向我显示具有特定角色的所有成员。该命令应该类似于$rolelist,它会在具有TEST ROLE 角色的消息中显示所有成员的显示名称。
如果可以的话,请帮助我:D
client.on('message', async message => {
if (message.content.startsWith(prefix + "rolelist")) {
const testRole = message.guild.roles.cache.find(role => role.name == "TEST ROLE");
const members = message.guild.members.filter(member => member.roles.find(testRole)).map(member => member.user.username)
message.channel.send(`These people currently have the TEST ROLE: \n${members}`)
}})
【问题讨论】:
-
我的做法是创建一个等于空数组的变量。接下来,使用 forEach 循环,对于服务器的每个成员,您希望 .find() 找到某个角色,如果它在成员的角色中找到该角色,您可以 .push() 将该用户的 ID 放入数组中,否则循环继续。不过这可能行不通,只是我想到的。
标签: javascript discord.js roles