首页 > 解决方案 > 当您拥有频道和消息 ID 但没有原始消息对象时,如何通过 discrod.js 访问不和谐消息?

问题描述

我正在尝试构建一个 json 备份文件,该文件将在发生崩溃时重新启动我的 discord.js 机器人。该机器人是一个简单的倒计时,可以编辑消息以显示剩余时间。

到目前为止,我已经设法将频道 ID 保存到 json,并且可以通过重新启动时的 ID 重新连接到频道 - myChannel = Client.channels.get(myChannelID);

但是我找不到在没有消息对象的情况下连接回消息的方法,或者如何将消息对象存储在 json 中。

我可以轻松获取消息 ID 并保存它,但似乎找不到使用该 ID 连接到消息的方法,感谢任何帮助

标签: discord.js

解决方案


@aci 它不太可能按照新的 discord.js V12.1.1 工作。我会要求韦恩检查 Package.json 中的 discord.js 版本。如果它高于 discord.js v12.0.x,那么您应该使用以下内容:

let mychannel = client.channels.cache.find(channel => channel.Id == "ChannelId")
let loadmsg = mychannel.cache.fetchMessage("msgid")

否则,如果它是用于单个服务器的机器人,则可以使用通道的名称:

let mychannel = client.channels.cache.find(channel => channel.name == "ChannelName")
let loadmsg = mychannel.cache.fetchMessage("msgid")

推荐阅读