检查用户是否离开了服务器 discord js

时间:2021-01-11 09:47:09

标签: discord.js

我正在尝试为人们进行语音聊天的时间制作排行榜,但是当人们离开服务器并仍在数据库中时,它会导致类型错误,因为它无法在服务器中读取该用户的 ID,所以我尝试了< /p>

if (!client.guilds.cache.get(serverid).members.cache.get(user)){
    continue
}

跳过不在服务器中的人,但这会导致另一个类型错误:TypeError: Cannot read property '281377425215062016' of undefined,我不知道如何解决这个问题,任何帮助将不胜感激。

for (const user in VoiceDatabase[serverid]){
    if (!client.guilds.cache.get(serverid).members.cache.get(user)){continue}
    if (user == "Servername"){continue}
    templeaderboard.push(VoiceDatabase[serverid][user].TotalXP)

1 个答案:

答案 0 :(得分:0)

使用 guildMemberRemove 获取用户何时离开服务器

client.on('guildMemberRemove', async member => {

});

例如在离开console.log时获取成员 -> 读取用户离开时的用户名

client.on('guildMemberRemove', async member => {
  console.log(member.user.username)
});

参考