我正在尝试使用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
答案 0 :(得分:3)
正如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
});
答案 1 :(得分:0)
由于您使用的是Discord JS v12,因此您需要使用list.members.forEach()
来代替list.members.cache.forEach()
。