【发布时间】:2020-11-05 17:27:13
【问题描述】:
if(!args[0]) return message.channel.send("Missing Parameter: `guild`")
if(args[0] === "guild") {
const loggingChannel = message.guild.channels.cache.find(ch => ch.name === "katsu-member-logs");
const katsuCategory = "Chika Logs";
if(!loggingChannel) {
const channelName = "katsu-member-logs";
message.guild.channels.create(channelName, { parent: katsuCategory.id, topic: "Katsu Member Logs" }).then(c => {
const allUsers = message.guild.roles.cache.find(r => r.name === "@everyone")
c.updateOverwrite(allUsers, {
SEND_MESSAGES: false
})
});
} else {
await message.channel.send("Oops, it looks like `katsu-member-logs` channel already exist in this server");
}
}
}
我有这段代码。它在创建频道时工作正常,但是,它没有创建频道应该去的文本类别。我不太确定如何解决此问题。 Discord.JS v12.2.0
【问题讨论】:
-
看起来您正在将
katsuCategory设置为值为“Chika Logs”的字符串,因为这是一个简单的字符串,而不是对该类别的通道对象的引用,它具有没有id值,不能设置为通道的父级。您需要做的是单独创建类别(或者如果已创建类别,则获取该类别的对象),然后使用它为新通道设置父级。
标签: javascript node.js discord bots discord.js