我正在尝试使用 Discord.js v12 获取公会中的所有成员。这就是我所拥有的:
const list = client.guilds.cache.get("720352141709148200");
list.members.forEach(member => {
//do stuff with guild memebrs here
}
Run Code Online (Sandbox Code Playgroud)
我已经看过这个堆栈溢出问题,但我认为它已经过时了,因为它会抛出一个错误,说它guilds是未定义的。这是我在上面的修改后的代码中得到的错误:
TypeError: list.members.forEach is not a function
Run Code Online (Sandbox Code Playgroud)
正如 Jakye 所指出的,您需要更改list.members为list.members.cache.
但是,您不能使用.forEach(),因为这是一个数组方法并list.members.cache返回一个 Discord 集合 ( Discord.Collection())。
代替.forEach(),您可以使用.each():
list.members.cache.each(member => {
// do stuff with guild members here
});
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用.array()然后.forEach()在其上使用将集合转换为值数组:
list.members.cache.array().forEach(member => {
// do stuff with guild members here
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6679 次 |
| 最近记录: |