首页 > 解决方案 > 从角色获取所有成员仅返回 Bot 和发送命令的用户

问题描述

所以我正在尝试使用以下代码让所有具有特定角色的服务器成员

                // REMOVE FROM ALL -----------------------------------------------
                if(args[0] == 'removeFromAll'){
                    var role = msg.mentions.roles.first();
                    if(role == null) {
                        Embeds.removeFromAllNoRole(msg)
                        break;
                    }
                    let roleID = role.id;
                    const membersWithRole = msg.guild.members.cache.filter((member) => member.roles.cache.some((role) => role.id === roleID)).map(m => m)
                    membersWithRole.forEach(member => {
                        member.roles.remove(roleID)
                            .then(function() {
                                console.log(`Removed role from user ${member.user.tag}!`);
                        })
                    })
                    Embeds.removeFromAllFinished(msg)
                }

然后删除他们的角色。然而,这只会从机器人自身和发送命令的用户中删除角色。

我至少尝试了所有这些解决方案:

代码返回所有成员,而不是角色中的成员

https://www.codegrepper.com/code-examples/javascript/discord.js+v12.2.0+get+all+members+of+a+role

如何从公会的每个成员中删除角色

如何在 Discord.Js 中列出所有具有角色的成员

他们都没有为我工作!

出了什么问题,我该如何解决?

标签: javascriptdiscorddiscord.js

解决方案


问题在于意图!这是一个具有类似问题的 SOF 问题的链接以及如何解决它!

Discord.js 机器人欢迎会员,分配角色并向他们发送 DM


推荐阅读