discord.js为@everyone锁定了一个频道



当我试图从频道上的@everyone删除SEND_MESSAGES权限时,会出现以下错误:TypeError [INVALID_TYPE]: Supplied overwrites is not an Array or Collection of Permission Overwrites.我不知道该怎么办。这是我的代码:

let channel = message.channel;
let roles = message.guild.roles;
let testRole = roles.fetch('@everyone');
channel.overwritePermissions(
testRole, { 'SEND_MESSAGES': false },
'string'
);
message.channel.send("Successfully locked channel.");

无论如何,我得到了一个解决方案:

let role = message.guild.roles.cache.find(r => r.name === "@everyone");
message.channel.overwritePermissions([{
id: role.id,
deny: ["SEND_MESSAGES"]
}]);    

最新更新