首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建一个通道,然后找到ID

如何创建一个通道,然后找到ID
EN

Stack Overflow用户
提问于 2021-02-22 17:19:16
回答 2查看 269关注 0票数 2

我正在用message.guild.channels.create创建一个频道。然后如何查找该通道的消息id并在新创建的通道中发送消息?

代码语言:javascript
复制
message.guild.channels.create(`bug-priority${reportPriority}-${reportStart}`, {
  type: 'text',
  permissionOverwrites: [{
    id: message.author.id,
    allow: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
  },
  {
    id: memberRole.id,
    deny: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
  }]
})
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-22 17:23:33

guild.channels.create返回一个解析为GuildChannel的承诺。这意味着您可以等待结果,这是新创建的通道:

代码语言:javascript
复制
const channel = await message.guild.channels.create(`bug-priority${reportPriority}-${reportStart}`, {
  type: 'text',
  permissionOverwrites: [
    {
      id: message.author.id,
      allow: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
    },

    {
      id: memberRole.id,
      deny: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
    },
  ],
});

const { id } = channel;

确保父函数是async函数。

票数 3
EN

Stack Overflow用户

发布于 2021-02-22 17:27:32

您可以在创建通道后使用bot.channels.cache.find()获取id,如下所示:

代码语言:javascript
复制
let channel = bot.channels.cache.find(channel => channel.name === "name here");
let channelid = channel.id;

希望这能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66320371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档