【问题标题】:Discord.js V13 sending a message to a specific channel of a specific guildDiscord.js V13 向特定公会的特定频道发送消息
【发布时间】:2022-01-25 21:21:41
【问题描述】:

我未能实现非常简单的目标。我无法向特定公会的特定频道发送消息。我浏览了有关堆栈溢出的文档和类似线程。

const guild = client.guilds.cache.find(g => g.id === process.env.guildId)
const channel = guild.channels.cache.find(ch => ch.name === "log-channel")
channel.send('????')

不起作用。相反,我收到了这个错误:

const channel = guild.channels.cache.find(ch => ch.name === "log-channel")
                      ^

TypeError: Cannot read properties of undefined (reading 'channels')

我错过了什么?

【问题讨论】:

  • 似乎guild 未定义。确保它在缓存中并且process.env.guildId 是正确的 ID。
  • @Jakye process.env.guildId 是正确的,所以我认为缓存是问题?我真的不知道如何使用缓存属性,因为文档中没有真正详细解释
  • 您在创建客户端时是否请求过GUILDS 意图?如果不是,那可能是原因。
  • 感谢发帖!请在答案中添加您用于解决问题的代码!

标签: node.js discord.js bots


【解决方案1】:

我实际上弄清楚了问题所在。我没有设置 GUILDS 意图(感谢 cmets 中的 Jakye)。

【讨论】:

    猜你喜欢
    • 2021-08-21
    • 2020-04-04
    • 2020-05-22
    • 2021-08-09
    • 2020-06-25
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多