所以我试图使用以下代码获取具有特定角色的所有服务器成员
// 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)
}
然后删除他们的角色。然而,这只会从机器人自身和发送命令的用户中删除角色。
我至少尝试了所有这些解决方案:
Code returns all members and not the members in the role
https://www.codegrepper.com/code-examples/javascript/discord.js+v12.2.0+get+all+members+of+a+role
How to remove a role from every member of the guild
How do I list all Members with a Role In Discord.Js
他们都没有为我工作!
出了什么问题,我该如何解决?
答案 0 :(得分:0)
问题出在意图上!这是具有类似问题的 SOF 问题的链接以及如何解决它!
Discord.js Bot Welcomes Member, Assign a Role and send them a DM