Javascript 显示当前discord服务器discord.js中的所有Webhook
我正在尝试制作一个命令来显示特定公会中制作的每个webhook,我认为这会起作用:Javascript 显示当前discord服务器discord.js中的所有Webhook,javascript,discord,discord.js,Javascript,Discord,Discord.js,我正在尝试制作一个命令来显示特定公会中制作的每个webhook,我认为这会起作用: let allwebhooks = ""; message.guilds.cache.forEach(webhook => { allwebhooks += `${hook.name}, `; }); let webhookembed = new Discord.MessageEmbed() .setColor("#8f82ff")
let allwebhooks = "";
message.guilds.cache.forEach(webhook => {
allwebhooks += `${hook.name}, `;
});
let webhookembed = new Discord.MessageEmbed()
.setColor("#8f82ff")
.setTitle(`There are ${hook.size} webhooks in: **${message.guild.name}**:`)
.setDescription(
`Webhooks: \n **${allwebhooks.slice(
0,
allwebhooks.length - 2
)}**`
);
message.channel.send(webhookembed)
但我得到了这个错误:
TypeError:无法读取未定义的属性“缓存”
第二行(forEach前面的一行)应该是这样的:
message.guild.fetchWebhooks()。然后(webhooks=>{
并将forEach
行修改为以下代码:
webhook.forEach(webhook=>{
消息
没有公会
属性,但是公会
。
而且,guild
有fetchWebhooks()
,它会返回一个关于该公会所有webhooks的承诺。所以你可以使用fetchWebhooks()
来实现这一点
编辑:附加
})
在所有其他代码之后。否则它将抛出语法错误
哦,这很有效!你如何获得它们的所有名称,我尝试了${webhooks.name}
但它只返回unfinedtrywebhook。name
webhook
是webhook的集合,webhook
是单个webhook。它现在工作得很好!tysm