当前位置: 首页 > 知识库问答 >
问题:

引用错误:未定义不一致;就在想踢的时候

李疏珂
2023-03-14

我不能用我的discord机器人踢任何人,因为发生了这种事,idk为什么。这是我在控制台中得到的:

ReferenceError: Discord is not defined
    at Object.execute (C:\Users\alber\OneDrive\Escritorio\Bot discord\commands\kick.js:17:21)
    at Client. (C:\Users\alber\OneDrive\Escritorio\Bot discord\index.js:34:15)
    at Client.emit (events.js:310:20)
    at MessageCreateAction.handle (C:\Users\alber\OneDrive\Escritorio\Bot discord\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
ebsocket\handlers\MESSAGE_CREATE.js:4:32)
    at WebSocketManager.handlePacket (C:\Users\alber\OneDrive\Escritorio\Bot discord\node_modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
    at WebSocketShard.onPacket (C:\Users\alber\OneDrive\Escritorio\Bot discord\node_modules\discord.js\src\client\websocket\WebSocketShard.js:436:22)
    at WebSocketShard.onMessage (C:\Users\alber\OneDrive\Escritorio\Bot discord\node_modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
    at WebSocket.onMessage (C:\Users\alber\OneDrive\Escritorio\Bot discord\node_modules\ws\lib\event-target.js:120:16)
    at WebSocket.emit (events.js:310:20)

这是代码的一部分:

const fs = require('fs');
const Discord = require('discord.js')
const { prefix, token } = require('./config.json');

const client = new Discord.Client();
client.commands = new Discord.Collection();

const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js'));

for (const file of commandFiles) {
    const command = require(`./commands/${file}`);
    client.commands.set(command.name, command);
}

这是一个不起作用的kick命令(只有当它应该禁止某人时,它才会中断,其余的都起作用):

module.exports = {
    name: 'kick',
    description: 'kicks the mentioned user',
    execute(client, message, args){
    var kickUser = message.guild.member(message.mentions.users.first() || message.guild.members.fetch(args[0]))    
    if(!kickUser){
        return message.reply('¿no tageas a nadie? Kickear paraguayos es malardo.')
    }
    var kickReason = args.join(' ').slice(22)
    if(!message.member.hasPermission(['KICK_MEMBERS'])){
        return message.reply('enséñame los permisos que los vea yo que parece que no tienes.s')
    }
    if(kickUser.hasPermission(['KICK_MEMBERS'])){
        return message.reply('no puedes echar a alguien con permisos de admin.')
    }

    var kickEmbed = new Discord.RichEmbed()    
    .setDescription('Kick')
    .setColor('#35d4a7')
    .addField('Server', guild.name)
    .addField('Kickeado por', `@${message.author.id}`)
    .addField('A las', message.createdTimestamp)
    .addField('Motivo', kickReason)

    message.guild.member(kickUser).kick(kickReason)
    kickUser.send(kickEmbed)
    },
};

共有3个答案

易骁
2023-03-14

正如其他答案所说,命令文件中没有定义不和谐。如果你想保存几行,只需把它放在你的index.js文件中。

global.Discord = require('discord.js')

我不确定这需要什么节点版本,但如果您在LTS上,它应该可以工作。在这个错误中,错误是非常描述性的,不需要堆栈溢出。试着读懂错误,下次再把它弄清楚。它清楚地说它没有定义。

包子航
2023-03-14

试着在踢文件中定义不和谐,


const Discord = require("Discord")

module.exports..........

或者呼吁它出口。处决

module.exports = {
    name: 'kick',
    description: 'kicks the mentioned user',
    execute(client, message, args, Discord){}
}

如果在参数中调用它,则还必须将其应用于命令处理程序

command.execute(client, message, args, Discord)
邹铭
2023-03-14

如果您还没有编辑任何来自kick命令脚本的内容,并在这里按原样复制它,那么您就错过了不和谐类的要求语句。

尝试导入它,如constdiscord=require('Discord.js') 就像您在第一个代码块中所做的那样。

 类似资料:
  • 这是我的HTML代码,我试图将div中输出的内容转换成可下载的pdf文件。 我在控制台上得到这个错误: “未捕获引用错误:未定义jsPDF” 我不确定我做错了什么,我甚至在脚本标签中添加了。。。

  • 我第一次与Firebase合作进行一个实践项目,我很难设置用户登录其帐户的能力。 我已成功设置注册,但到目前为止,我无法登录并检查身份验证状态是否正常工作。 我在控制台中不断收到的错误是“未捕获引用错误:未定义Firebase” 我自己做了一些研究,但我似乎找到的唯一答案是,你需要包含Firebase的脚本标签,这在这里不相关,因为我已经包含了它们,或者2.4.2版本的过时响应 有关守则如下:

  • 用我的超文本标记语言,下面的代码部分 在控制台上生成以下错误: 未捕获引用错误:未定义WEBGL 我已经导入了所有必要的js,所以问题是:如何解决这个问题?

  • 试图按照官方手册实现一个模块时,我收到了以下错误消息: 但在我的代码中没有任何地方使用过这个名称。 我该怎么解决这个?

  • 我用这些类创建了一个登录名,但给了我一个错误 (!)致命错误:未捕获的错误:调用未定义的方法UserController::c在第17行的C:\xampp\htdocs\progetto个性\控制器\User Controller.php ( ! ) 错误:调用C:\xampp\htdocs\progetOpersonale\controllers\User Controller中未定义的方法Us

  • 我在Codeigniter中发现了这些错误。 C:\xampp1\htdocs\CI\system\database\drivers\mysql\mysql\u驱动程序。php:92堆栈跟踪:#0 C:\xampp1\htdocs\CI\system\database\DB_驱动程序。php(116):CI_DB_mysql_驱动程序- 模范班 视图类 控制器类 数据库php