如何获取公会 Discord.js 中的成员列表
Posted
技术标签:
【中文标题】如何获取公会 Discord.js 中的成员列表【英文标题】:How to Get a List of Members in a Guild Discord.js 【发布时间】:2020-11-21 14:50:40 【问题描述】:我正在尝试使用 Discord.js v12 让公会中的所有成员。这就是我所拥有的:
const list = client.guilds.cache.get("720352141709148200");
list.members.forEach(member =>
//do stuff with guild memebrs here
我看过这个stack overflow question,但我认为它已经过时了,因为它会抛出一个错误,说guilds
是未定义的。这是我在上面修改过的代码时遇到的错误:
TypeError: list.members.forEach is not a function
【问题讨论】:
【参考方案1】:正如 Jakye 所指出的,您需要将list.members
更改为list.members.cache
。
但是,您不能使用.forEach()
,因为这是一个数组方法,list.members.cache
返回一个 Discord 集合 (Discord.Collection()
)。
你可以用.each()
代替.forEach()
:
list.members.cache.each(member =>
// do stuff with guild members here
);
或者,您可以使用 .array()
将集合转换为值数组,然后在其上使用 .forEach()
:
list.members.cache.array().forEach(member =>
// do stuff with guild members here
);
【讨论】:
【参考方案2】:由于您使用的是 Discord JS v12,因此您需要使用 list.members.cache.forEach()
而不是 list.members.forEach()
。
【讨论】:
以上是关于如何获取公会 Discord.js 中的成员列表的主要内容,如果未能解决你的问题,请参考以下文章