不和谐.js机器人不能踢成员



以下是代码:

if (message.author.bot) return;
if (message.content.startsWith(PREFIX)) {
const [CMD_NAME, ...args] = message.content
.trim()
.substring(PREFIX.length)
.split(/s+/);

if (CMD_NAME === 'kick') {
if (args.length === 0) return message.reply('Provide an ID');
const member = message.guild.members.cache.get(args[0]);
if (member) {
member.kick();
} else {
message.channel.send('User not found');
}
} 
}
});

出于某种原因,机器人总是输出";用户未找到";即使我使用用户的id。机器人有这样做的权限,有人知道解决这个问题的办法吗?

这是因为Discord Api中最近的更改导致Guild缓存为空,要解决此问题,您可以使用以下选项-

    1. 在Discord开发者门户中启用SERVER MEMBERS INTENT意向
    1. 获取帮会成员message.guild.members.fetch(args[0])

最新更新