ReferenceError: "bot" is not defined (Eris) - 在我的命令中

问题描述

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

ReferenceError: bot 未定义

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

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

解决方法

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);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...