discord.js - 如何从地图中排除具有特定角色的成员?[discord.js]
问题描述
我需要一个命令,它给我一个成员列表,Xrole
但没有Yrole
。如果member1
有Xrole
,将其包含在列表中;如果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');
这很好用,但我不知道如何排除具有额外角色的成员
解决方案
您可以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');
推荐阅读
- python - 杀死执行多个子进程的python脚本
- algorithm - 我如何知道我的地理空间数据聚类的效果如何?
- sql - 具有引用不同表的多个条件的子查询?
- php - 如何在php中删除父数组
- r - 如何使用 ggplot r 绘制折线图和误差线?
- intellij-idea - IntelliJ ideaVim - timeoutlen with angle bracket <
- javascript - 用户离开网站时生成弹出窗口的最佳方法是什么
- c - 用于系统构建器的 paxos
- android-studio - Android Studio 上的小字体,高密度显示
- postgresql - 如何通过 exec odoo11 容器运行 odoo 11