Javascript Discord.js成员数减少问题

Javascript Discord.js成员数减少问题,javascript,discord.js,Javascript,Discord.js,我正在开发一个机器人,用于计算Discord服务器中服务器中的成员数。现在我总共有270名成员。但就会员数量而言,它达到199个会员,然后自动下降到160个会员。我不知道发生了什么,因为它只是随机地从199个成员减少到160或168个。还不到200。当我第一次添加机器人时,我没有任何问题。直到最近它才开始这样做。代码如下 const{ 配置 }=要求(“dotenv”); const Discord=require('Discord.js'); const client=new Discord.

我正在开发一个机器人,用于计算Discord服务器中服务器中的成员数。现在我总共有270名成员。但就会员数量而言,它达到199个会员,然后自动下降到160个会员。我不知道发生了什么,因为它只是随机地从199个成员减少到160或168个。还不到200。当我第一次添加机器人时,我没有任何问题。直到最近它才开始这样做。代码如下

const{
配置
}=要求(“dotenv”);
const Discord=require('Discord.js');
const client=new Discord.client();
//变数
const ownerID='426345341072179223';
常量前缀=';
//发送给ping bot的消息
client.on('message',message=>{
让args=
message.content.substring(前缀.length).split(“”);
开关(参数[0]){
个案"平":
回复('你已经成功地ping了我');
打破
}
})
client.once(“就绪”,()=>{
//当机器人准备好了
client.user.setActivity(`SpongeBoZZ ACAB on
YouTube`{
键入:“倾听”
});//它将设置状态
: )
});
//服务器统计设置
const serverStats={
Guidid:“669622560098353152”,
totalUsersID:'6946882977144854',
memberCountID:'694689022588616814',
botCountID:'694689099725930597'
};
client.on('ready',()=>console.log('Bot现在是
),;
client.on('guildMemberAdd',member=>{
if(member.guild.id!==serverStats.guildID)
返回;
`client.channels.cache.get(serverStats.totalUsersID.setName)(`
用户总数:${
member.guild.memberCount
}
`);
client.channels.cache.get(serverStats.memberCountID).setName(`
会员人数:${
member.guild.members.cache.filter(m=>!m.user.bot).size
}
`);
client.channels.cache.get(serverStats.botCountID).setName(`
机器人计数:${
member.guild.members.cache.filter(m=>m.user.bot).size
}
`);
});
client.on('guildMemberRemove',member=>
{
如果(member.guild.id!==serverStats.guildID)返回;
client.channels.cache.get(serverStats.totalUsersID.setName)(`
用户总数:${
member.guild.memberCount
}
`);
client.channels.cache.get(serverStats.memberCountID).setName(`
会员人数:${
member.guild.members.cache.filter(m=>!m.user.bot).size
}
`);
client.channels.cache.get(serverStats.botCountID).setName(`
机器人计数:${
member.guild.members.cache.filter(m=>m.user.bot).size
}
`);
});
//登录到Discord
client.login(process.env.token);

要计算机器人所在的所有discord服务器上的用户成员,您可以执行以下操作:

let membersCount = 0;
client.users.cache.map(users => users.id ? membersCount += 1 : false).pop()
console.log(membersCount);
然后你就得到了你的机器人可以看到的用户数量

要获得单个公会成员的nb,您必须通过公会集合更改客户端用户

client.on("message", (message) => {

let membersCount = 0;
message.guild.members.cache.map(users => users.id ? membersCount += 1 : false).pop()
console.log(membersCount);
});

对于“总用户”,您使用的是直接来自Discord API的
.memberCount
。对于“成员计数”和“机器人计数”,您直接从缓存中提取数字。在这里,不能保证缓存每个成员/用户,这将影响您计数的准确性。

这将给出一个错误并显示users.id?未定义,以便澄清上述代码在代码中的输入位置。我的机器人在一台服务器上。我不确定你是否可以用添加的部分重写代码,以便我知道它需要在代码中的位置。我不知道放在哪里。你只需要在index.js中复制并通过