我正在尝试实现一个功能,该功能会显示分配给某个角色的用户数量。 几个月前,它完美无缺,但在进行了某些更新后,它就无法正常工作了。
let count = message.guild.members.filter(m => m.roles.find(r => r.name === roleName)).size;
message.channel.send(user + " Count of users in " + roleName + ": "+count);
我的代码现在看起来像这样:
let count = message.guild.members.cache.filter(m => m.roles.cache.find(r => r.name === roleName)).size; //These commands are in a module export, message is an object passed as an argument into it
message.channel.send(user + " Count of users in " + roleName + ": "+count);
很容易说它不起作用,它通常返回最近与机器人发送消息或互动的用户数。我尝试使用各种 .fetch()
但它们只是返回:
UnhandledPromiseRejectionWarning:错误 [GUILD_MEMBERS_TIMEOUT]:成员没有及时到达
...或类似的东西。
我试过 guild.members.fetch()
/guild.fetch()
之类的。任何帮助将不胜感激。