【发布时间】: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