node.js - 我的不和谐 js 命令处理程序不起作用
问题描述
嘿,我似乎无法让我的命令处理程序与多个命令文件一起工作有人可以帮我解决这个问题吗?我尝试了多种方法,我似乎无法让它与多个文件夹一起工作。我对 Discord js 也有点陌生,我有一个工作,然后我想让它更有条理,但我似乎无法让它工作
const fs = require(`fs`);
module.exports = (client, Discord) => {
const command_files = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
const command_files = fs.readdirSync('./moderationcommands/').filter(file => file.endsWith('.js'));
for (const file of command_files) {
const command = require(`../commands/${file}`, `../moderationcommands/${file}`);
if (command.name) {
client.commands.set(command.name, command);
} else {
continue;
}
}
}
这是错误
PS C:\Users\lolzy\OneDrive\Desktop\discordbot> node .
C:\Users\lolzy\OneDrive\Desktop\discordbot\handlers\command_handler.js:5
const command_files = fs.readdirSync('./moderationcommands/').filter(file => file.endsWith('.js'));
^
SyntaxError: Identifier 'command_files' has already been declared
at wrapSafe (internal/modules/cjs/loader.js:984:16)
at Module._compile (internal/modules/cjs/loader.js:1032:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
at Module.load (internal/modules/cjs/loader.js:933:32)
at Function.Module._load (internal/modules/cjs/loader.js:774:14)
at Module.require (internal/modules/cjs/loader.js:957:19)
at require (internal/modules/cjs/helpers.js:88:18)
at C:\Users\lolzy\OneDrive\Desktop\discordbot\main.js:13:5
at Array.forEach (<anonymous>)
at Object.<anonymous> (C:\Users\lolzy\OneDrive\Desktop\discordbot\main.js:12:38)
PS C:\Users\lolzy\OneDrive\Desktop\discordbot>
解决方案
您将两个变量命名为完全相同:
const command_files = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
const command_files = fs.readdirSync('./moderationcommands/').filter(file => file.endsWith('.js'));
你只需要确保他们有不同的名字
推荐阅读
- xslt - 这个模板在 XSLT 中是如何工作的?
- progressive-web-apps - SSR 如何与 PWA 搭配使用
- django - Django:djangorestframework-jwt:如何将它用于普通的 DJango 视图而不是 DRF 视图
- properties - Vuejs - 如果存在或为零则通过道具
- openiddict - openIddict 缺少 AddEntityFrameworkCoreStores 定义
- html - 在 r 中绘制 html
- javascript - 如果选择了另一个,则保留一个空的选择选项
- javascript - 在javascript中使用https路径下载pdf文件
- rxjs - 如何覆盖订阅
- macos - 如何从流中删除最后一个换行符