我想获得一个角色的成员数量,但总是给我“ 1”:
const server_roles = client.guilds.cache.get('server ID').roles.cache.get('role ID').members.size;
console.log(server_roles)
日志:
真实角色成员数= 4,而不是1
答案 0 :(得分:1)
问题不在您的代码内,这与机器人在最近更新后可以访问的信息有关。为了解决这个问题:
Bot
Privileged Gateway Intents
PRESENCE INTENT
和SERVER MEMBERS INTENT
旁边的两个开关然后,在代码中,初始化Discord客户端时,添加以下内容:
Discord.Client({ ws: { intents: Discord.Intents.ALL } });
该代码假定您已将模块导入为Discord
这很复杂,但是在最近的更新之后,这是实现您想要的唯一方法