Discord 获取错误';命令文件';已经申报了

Discord 获取错误';命令文件';已经申报了,discord,discord.js,Discord,Discord.js,我正在为Discord服务器制作一个镜像机器人,但还有一个问题: 已声明“commandFiles” 这里有人修复了它,但没有完全修复,因为出现了新问题。这就是所有用于image命令的脚本,所有其他内容都只是与此无关的命令,并且不在其中使用“commandfile” 以下是所有脚本: const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js')); for(const file

我正在为Discord服务器制作一个镜像机器人,但还有一个问题:

已声明“commandFiles”

这里有人修复了它,但没有完全修复,因为出现了新问题。这就是所有用于image命令的脚本,所有其他内容都只是与此无关的命令,并且不在其中使用“commandfile”

以下是所有脚本:


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

client.on('message', message =>{
    if(!message.content.startsWith(prefix) || message.author.bot) return;

    const args = message.content.slice(prefix.length).split(/ +/);
    const command = args.shift().toLowerCase();

    if (command == 'ping'){
        client.commands.get('ping').execute(message, args);
    }
    if (command == 'youtube'){
        client.commands.get('youtube').execute(message, args);
    }
    if (command == 'instagram'){
        client.commands.get('instagram').execute(message, args);
    }
});

client.commands = new Discord.Collection();

client.on('message', message => {
 
    let args = message.content.substring(PREFIX.length).split(" ");
 
    switch (args[0]) {
        case 'image':
        image(message);
 
        break;
    }
 
});

function image(message){
 
    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + "cursed images",
        method: "GET",
        headers: {
            "Accept": "text/html",
            "User-Agent": "Chrome"
        }
    }};

    client.on('ready', () =>{
        console.log('This bot is online!');
    })

    request(options, function(error, response, responseBody){
        if (error){
            return;
        }
 
 
        $ = cheerio.load(responseBody);
 
 
        var links = $(".image a.link");
 
        var urls = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"));
       
        console.log(urls);
 
        if (!urls.length) {
           
            return;
        }
 
        // Send result
        message.channel.send( urls[Math.floor(Math.random() * urls.length)]);
    });
错误屏幕截图:


所有这些错误意味着变量
commandFiles
已在代码中的其他地方定义

例如:

const commandFiles='foo';
const commandFiles='bar';
console.log(命令文件);

JavaScript不知道使用哪个。我建议搜索
commandFiles
并检查代码中是否有多个定义。

查看代码中的某个地方,您已经将commandFiles声明为变量。这是否回答了您的问题?