You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord bot重启后reaction.me始终为false 无法检测自身反应如何解决

Discord bot reaction.me重启后返回false的问题原因及修复

异常根本原因

  • reaction.me是discord.js库提供的本地缓存标记字段,仅当bot在当前运行周期内主动调用接口添加对应反应时,才会被自动设为true。它不属于Discord官方接口返回的原生字段,也不会随你主动拉取反应数据、拉取反应用户列表的操作自动更新。
  • bot重启后,所有本地缓存的me标记会被全部清空,即便你后续拉取了反应的完整用户列表、已经能在缓存中找到bot自身的ID,库也不会自动更新reaction.me的取值,因此会一直返回false。

修复方案

不需要依赖reaction.me做判断,直接通过拉取到的反应用户列表校验bot自身ID是否存在即可,示例代码:

// 原有逻辑:if(!reaction.me) return; 替换为如下代码
if (!reaction.users.cache.has(client.user.id)) return;

内容的提问来源于stack exchange,提问作者MrMythical

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 12:27:02