如何从地图中排除具有特定角色的成员? [discord.js]

时间:2020-09-21 10:33:03

标签: discord.js

我需要一个命令,该命令为我提供具有Xrole但没有Yrole的成员列表。如果member1Xrole,则将其包括在列表中;如果member2具有Xrole Yrole,则从列表中排除。

我当前的代码:

const Xrole = message.guild.roles.cache.get('id');
message.guild.roles.cache
 .get(Xrole.id)
 .members.map((m) => m.user.tag)
 .join('\n');

这很好,但是我不知道如何排除具有额外角色的成员

1 个答案:

答案 0 :(得分:0)

您可以在Collection.filter()的集合上使用GuildMemberManage.cache

message.guild.members.cache
 .filter(
  (member) =>
   member.roles.cache.has('X Role ID') && !member.roles.cache.has('Y Role ID')
 )
 .map((m) => m.user.tag)
 .join('\n');
相关问题