【问题标题】:TypeError: client.guilds is not iterable(14:29) [closed]TypeError:client.guilds 不可迭代(14:29)[关闭]
【发布时间】:2020-09-16 08:44:07
【问题描述】:

我正在向我的 Discord Bot 添加新功能,然后突然以下问题阻止了我完成我的代码! (我的错误是什么?我的错误在哪里?我该如何解决?)

问题: UnhandledPromiseRejectionWarning: TypeError: client.guilds is not iterable(14:29)

我的代码:

    1: const { SettingProvider } = require("discord.js-commando");
    2: const File = require("./File.js");
    3: 
    4: module.exports = class JSONSettingsProvider extends SettingProvider {
    5:     constructor(path) {
    6:         super();
    7:         this.file = new File(path);
    8:         if (!this.file.exists) this.file.write({}, false, true);
    9:     }
    10: 
    11:     init(client) {
    12:         const data = this.file.read();
    13:         const id = bot.guild("689879529493233684");
    14:         for (const [id] of client.guilds) {
    15:             if (!data[id]) data[id] = {};
    16:             if (data[id].prefix && client.guilds.has(id))
    17:                 client.guilds.get(id).commandPrefix = data[id].prefix;
    18:         }
    19:         this.file.write(data);
    20:     }

【问题讨论】:

  • client.guilds的值是多少?
  • 欢迎 Kawaki 加入社区,看起来 client.guilds 是空的或不可迭代的对象。如果您只想知道如何处理此错误或向我们提供有关调用 init(client) 的更多详细信息,可以更新您的问题。
  • 你使用的是什么版本的 discord.js?
  • "discord.js": "^12.2.0"
  • 调试它?记录吗?您处于检查这一点的最佳位置。我或其他任何人都不可能这样做。

标签: javascript node.js visual-studio-code discord discord.js


【解决方案1】:

添加一个if 条件以环绕第14-19 行,就像if (typeof client.guilds == 'object' && typeof client.guilds[Symbol.iterator] == 'function') 一样

【讨论】:

    猜你喜欢
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 2014-01-28
    • 2013-03-03
    • 2019-08-20
    • 1970-01-01
    • 2019-01-12
    • 1970-01-01
    相关资源
    最近更新 更多