所以我在How to remove a role from every member of the guild处找到了这个线程,但是当我尝试回答时有人给了我一个错误。然后,我尝试了另一条路线。
const EEEE = '153587203488874496';
let membersWithRole = message.guild.roles.cache.get('766141415759151154').members;
if (message.author.id === EEEE)
membersWithRole.roles.remove('766141415759151154');
message.channel.send(`${message.author.username} kicks you out of their room`);
现在,我收到错误消息“ TypeError:无法读取未定义的属性'remove'”,所以我不确定该怎么做。另外,我还将使其与您所处的语音通道断开连接,因此,如果您可以节省我的时间,我也将不胜感激。
答案 0 :(得分:1)
错误指出membersWithRole.roles
未定义,这是正确的。在角色上调用.members
(就像您对message.guild.roles.cache.get('766141415759151154').members;
所做的那样)将返回Collection of GuildMembers。如果要为每个GuildMember删除角色,则可以使用Collection.prototype.each
方法。请参见下面的示例代码并尝试一下:
membersWithRole.each((memberWithRole) => {
memberWithRole.roles.remove('766141415759151154');
});
关于您的以下请求:
此外,我还将使其与您所使用的任何语音通道断开连接,因此,如果您可以节省时间,我也将不胜感激。
这是一个简单的“否”。堆栈溢出是一个问答网站,而不是代码编写服务。因此,除非您有任何疑问或问题,否则无论您尝试什么,似乎都无法弄清楚,否则人们不会愿意为您免费免费编写所有代码来帮助您。