在discord.js中为类别分配频道

时间:2019-11-09 01:38:29

标签: node.js promise discord discord.js

我有一个可以在Discord服务器内部创建频道的机器人。我在将频道分配到类别时遇到了麻烦。

我的代码:

    if (!message.member.hasPermission("ADMINISTRATOR)")) return message.reply("nope");
if (command === "open") {
if (!args[0]) return message.channel.send('Proper usage: *open <name>');
let botmessage = args.join(" ");
message.guild.createChannel('?' + botmessage, { type: 'text' })
channel.setParent('[ID of Category here]')

该漫游器成功创建了通道,但未分配给该类别。我得到的错误是:

  

“渠道”未定义。

我总体上仍在学习promise和discord.js。 如何让Discord机器人将创建的频道分配到指定类别?

1 个答案:

答案 0 :(得分:0)

您需要使用.then()来获取已解决的频道:

message.guild.createChannel('?' + botmessage, { type: 'text' }).then((channel) => {
    channel.setParent('[ID of Category here]');
});

它将起作用。 请注意,您还可以使用父选项创建频道:

message.guild.createChannel('?' + botmessage, { type: 'text', parent: '[ID of Category here]' });

通过这种方式,您无需使用诺言,您将获得更好的性能。