Javascript discord.js从频道权限中删除用户

Javascript discord.js从频道权限中删除用户,javascript,discord.js,Javascript,Discord.js,我想知道是否有人知道是否有办法将用户从textchannel权限中允许的用户/角色列表中删除。我知道我可以简单地拒绝频道中该用户的READ_MESSAGES权限,以使他们看不到该房间。有没有办法让我的机器人从权限列表中同时删除允许的用户 谢谢。使用: 在撰写本答案(2021年3月30日)和Discord.js 12.5.1版时,答案是: // type is either 'member' or 'role' // id is either the user or role id const

我想知道是否有人知道是否有办法将用户从textchannel权限中允许的用户/角色列表中删除。我知道我可以简单地拒绝频道中该用户的READ_MESSAGES权限,以使他们看不到该房间。有没有办法让我的机器人从权限列表中同时删除允许的用户

谢谢。

使用:

在撰写本答案(2021年3月30日)和Discord.js 12.5.1版时,答案是:

// type is either 'member' or 'role'
// id is either the user or role id

const id = "12345678910112"
const type = "member"

await channel.permissionOverwrites.find(o => o.type === type && o.id === id).delete()
如果要删除多个用户/角色:

const type = 'member'
const ids = ['123456789012323', '1234567890123455']

await Promise.all(channel.permissionOverwrites.filter(o => o.type === type && ids.includes(o.id)).map(o => o.delete()));
如果要删除每个用户/角色:

const type = 'member'

await Promise.all(channel.permissionOverwrites.filter(o => o.type === type).map(o => o.delete()));

这是什么意思:您是否正在尝试删除权限覆盖(例如,当您在Discord应用程序的权限页面末尾单击“删除”时)?是的。现在,我只能将用户对某个频道的权限更改为“无法阅读”,以便将其从该频道的访问权限中删除。我正试图将它们一起从频道的权限列表中删除。谢谢你的帮助!我要试一试。谢谢。我试了一下你的建议。不幸的是,它返回了一个错误/app/node|modules/discord.js/src/util/Permissions.js:194 11:21 PM如果(权限类型!='number'| |权限<0)抛出新的RangeError(常量.错误.非|权限);11:21 PM^11:21 PM 11:21 PM RangeError:无效的权限字符串或编号。显然,它太简单了,我完全忽略了它。它只是channel.permissionOverwrites.get(UserID或RoleID.delete();谢谢你的帮助!
const type = 'member'

await Promise.all(channel.permissionOverwrites.filter(o => o.type === type).map(o => o.delete()));