📅  最后修改于: 2023-12-03 15:30:27.809000             🧑  作者: Mango
有时,您可能需要获取一个 Discord Bot 在所有加入的服务器(公会)的列表。在 Discord.js 中,这可以通过以下步骤完成:
const guilds = client.guilds.cache.map(guild => guild);
此代码行会对 client(即 Discord.js 客户端)的公会缓存进行映射,以获取所有公会对象,并将其存储在 guilds 变量中。
console.log(guilds);
上述代码将在控制台中打印出所有公会的信息对象。
let formatted = "";
guilds.forEach(guild => {
formatted += `- ${guild.name} (${guild.id}) - Member Count: ${guild.memberCount}\n`;
});
此代码会利用 forEach 进行循环,将每个公会的名称、ID 和成员计数格式化为列表项,并存储在 formatted 变量中。
return {
content: "以下是所有公会列表:\n```" + formatted + "```",
split: true
};
上述代码段将格式化的公会信息作为 Markdown 列表添加到消息中,并设置“split”属性为 true,以确保消息在超过 2000 字符时正确拆分。
您现在可以将这些代码添加到您的 Discord Bot 应用程序中,以获取并显示所有公会的列表。