三行代码  ›  专栏  ›  技术社区  ›  Oofin

查找频道时出现Discord.js问题

  •  1
  • Oofin  · 技术社区  · 1 月前

    我试图发出一个验证命令,但我一直被机器人卡住,说“请输入一个有效的频道!”即使有一个有效的频道名称。

     let channel = message.mentions.channels.first() ||
     message.guild.channels.cache.get(args[0]) ||
     message.guild.channels.cache.find(c => c.name.toLowerCase() ===
     args[0].toLocaleLowerCase());
             if (!channel || channel.type !== 'text') return message.channel.send("**Please Enter A Valid Channel!**");
    

    Discord Example code

    不要介意提到这个角色。这是一个在反应时被赋予的角色

    1 回复  |  直到 1 月前
        1
  •  3
  •   MrMythical    1 月前

    在discord.js v13中,频道类型已更改:

    v12 v13
    DM信道 dm DM
    GROUP_DM
    公会文字频道 text GUILD_TEXT
    公会文字频道的公共线程频道 不适用 GUILD_PUBLIC_THREAD
    不适用 GUILD_PRIVATE_THREAD
    公会语音频道 voice GUILD_VOICE
    不适用 GUILD_STAGE_VOICE
    帮会分类频道 category GUILD_CATEGORY
    工会新闻频道 news GUILD_NEWS
    不适用 GUILD_NEWS_THREAD
    帮会商店频道 store GUILD_STORE
    未知类型的泛型通道 unknown UNKNOWN

    this answer 制造者 @Zsolt Meszaros

    将代码更改为:

    if (!channel || channel.type !== "GUILD_TEXT") return message.channel.send("**Please Enter A Valid Channel!**")