如何从公会的每个成员中删除角色 [英] How to remove a role from every member of the guild
本文介绍了如何从公会的每个成员中删除角色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何从服务器内部的每个用户中删除角色,我尝试使用 let everye = message.guild.members.get
和 let everye = message.guild.members 代码>,但它们都无法正常工作.
How can I remove a role from every user inside a server, I tried using let everyone = message.guild.members.get
and let everyone = message.guild.members
but they both didn't work.
这是整个代码:
const Discord = require("discord.js");
const errors = require("../utils/errors.js");
module.exports.run = async(bot, message, args) => {
if (!message.member.hasPermission("MANAGE_ROLES")) return errors.noPerms(message, "MANAGE_ROLES");
let role = message.guild.roles.find(`name`, `NSFW`);
let everyone = message.guild.members.get
if (args[0] == "help") {
message.reply("Usage: !nsfwoff");
return;
message.channel.send(`NSFW has been turned to OFF, you're now safe from any kind of explicit content!`)
}
await (everyone.removeRole(role.id))
.then(role => console.log(`NSFW OFF: ${message.guild.name}`))
.catch(console.error);
message.channel.send(`NSFW has been turned to ON, try !nsfwget to get the NSFW role!`);
}
module.exports.help = {
name: "nsfwoff"
}
推荐答案
只需使用 .forEach()
函数.
const Discord = require('discord.js');
module.exports.run = async (bot, message, args) => {
if(!message.member.hasPermission('MANAGE_ROLES')) return noPermissions();
let role = message.guild.roles.find(t => t.name == 'NSFW')
message.guild.members.forEach(member => {
if(!member.roles.find(t => t.name == 'NSFW')) return;
member.removeRole(role.id);
.then(function() {
console.log(`Removed role from user ${member.user.tag}!`);
})
})
}
这篇关于如何从公会的每个成员中删除角色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文