ReferenceError:未定义“bot”(Eris)-在我的命令中

Posted

技术标签:

【中文标题】ReferenceError:未定义“bot”(Eris)-在我的命令中【英文标题】:ReferenceError: "bot" is not defined (Eris) - in my commands 【发布时间】:2021-04-02 13:56:09 【问题描述】:

我正在创建一个 Discord 机器人,并且已经取得了很大进展。但是,当我尝试连接我的机器人时,我不断收到此错误:

ReferenceError: 机器人未定义

我的主文件代码是here。我已经定义了常量变量bot 来要求 Eris 库。

但是,当我尝试运行代码时,我的命令代码会抛出上述错误。我尝试使用多个版本的module.exports,但似乎没有任何效果。我的命令代码位于here。

【问题讨论】:

以后,请在您的帖子和don't just include a link to a code hosting site中包含所有相关代码。您的帖子应该独立于任何其他资源; consider what would happen 如果该网站将来出现故障! 【参考方案1】:

bot 常量只存在于主文件中,因此您需要一种方法将其传递给命令文件。您可以使用 bot 作为参数从命令文件中导出函数

const Permissions = require('eris').Constants.Permissions;

module.exports = function(bot)
    // paste in the rest of the commands code
;

然后运行主文件中的函数

require('../src/commands/loader')(bot);

【讨论】:

以上是关于ReferenceError:未定义“bot”(Eris)-在我的命令中的主要内容,如果未能解决你的问题,请参考以下文章

Discord bot 客户端未定义

Angular5 webpack ReferenceError:未定义窗口

A: Discord.js v12+ 频道未定义

ReferenceError:未定义提取

未定义函数 - 未捕获的 ReferenceError

打字稿 - 未捕获的 ReferenceError:未定义导出