【问题标题】:Discord.js cannot read property id of undefinedDiscord.js 无法读取未定义的属性 id
【发布时间】:2021-06-27 21:01:09
【问题描述】:

所以事情就是这样。我用 discord.js 做了一个机器人,它运行良好,然后崩溃了。

我得到的原因是“guild.channels.set(channel.id, channel); ^

TypeError:无法读取未定义的属性“id”

而且这个错误似乎在 node_modules\discord.js\src\client\ClientDataManager.js:81

但我就是不知道该怎么办,机器人无法登录,而且我没有更改主文件,所以我不太明白

【问题讨论】:

  • 您能否确认channel 变量设置正确?
  • 在ClientDataManager的newChannel()函数中,但不知道是干什么用的……

标签: javascript node.js discord.js


【解决方案1】:

看起来这个错误来自他们最近添加的新“阶段”频道类型。 该错误来自于它未在 ClientDataManager newChannel() 开关或其他任何地方列出,因为您需要更新 Discord.js 以添加其支持。

如果您不想更新 Discord.js,临时修复方法是添加 if(channel != null) 第 81 行。

但是您的机器人将无法处理舞台频道,因此唯一的解决方案是更新 Discord.js

【讨论】:

  • 偶然发现你在谷歌上的回答,你的临时修复工作完美。谢谢!
【解决方案2】:

好的,所以我在 ClientDataManager.js 中添加了一个 If 以避免此错误,不太确定这是否是解决该错误的方法,但我猜这似乎总比没有好...

如果您有任何其他想法,请不要犹豫

【讨论】:

  • 如果您在相应问题下发表评论或将其附加到您的问题中,我会更好。
【解决方案3】:

发生这种情况是因为添加了名为“舞台频道”的新功能 discord,唯一的解决方法是将 discord.js 更新到最新版本。在撰写本文时,我正在运行 discord.js 12.5.3,但我没有遇到这个问题

【讨论】:

    猜你喜欢
    • 2021-05-29
    • 1970-01-01
    • 2020-04-08
    • 2020-10-01
    • 2022-06-10
    • 2020-07-20
    • 1970-01-01
    • 2020-12-05
    • 2021-04-14
    相关资源
    最近更新 更多