向频道发送嵌入/消息时返回未定义

时间:2021-05-22 18:05:18

标签: javascript discord discord.js undefined

所以我有这个代码是我为反应角色设置制作的,我想把它变成“845711730809503744”,但这返回未定义。 完整代码:

client.channels.cache.get(channel => channel.id === "845711730809503744").send(roleEmbed)
                         ^          returns "Undefined"               ^

有人知道为什么以及如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

首先,请确保 ID 正确。然后尝试 fetch 频道。 fetch 从 Discord 获取频道,或者频道缓存(如果已经可用)。

client.channels
  .fetch("845711730809503744")
  .then(channel => channel.send(roleEmbed))
  .catch(console.error)

或者你可以使用 async/await:

try {
  const channel = await client.channels.fetch("845711730809503744")
  channel.send(roleEmbed)
} catch(error) {
  console.error(error)
}