Я новичок в JS и программировании в целом, поэтому, пожалуйста, объясните это с учетом. Я знаю, что этот вопрос сформулирован не очень хорошо, но я не мог придумать, как его сформулировать лучше, поэтому смело редактируйте его. Я создаю дискотечного бота с диссонансом. js. Я сделал команду под названием «тест». Мой код выглядит следующим образом (в файле с именем test. js):
module.exports = {
name: 'test',
description: 'Test command. Sends back "Test successful."',
prefixType: 'devPrefix',
execute(msg, args) {
if (!args.length){
msg.channel.send('Test successful.');
} else {
msg.channel.send('Test successful. You entered ' + args.length + ' argument(s).')
}
},
};
Как мне получить значение prefixType
и использовать его в моем файле индекса index. js? Однако решение должно работать для любого файла в папке (называемой «командами»), а не только с test. js.
Если это поможет, я включаю код в свой основной индекс. js файл, который касается обработки и выполнения команд:
const Discord = require('discord.js');
const fs = require('fs'); //For commands (fs = file system)
const botClient = new Discord.Client;
const CONFIG = require('./config.json');
//Get the commands
botClient.commands = new Discord.Collection();
const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js'));
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
botClient.commands.set(command.name, command);
}
botClient.once('ready', () => {
console.log('Bot online and ready.');
});
botClient.on('message', msg => {
if ((!msg.content.startsWith(CONFIG.prefix) && !msg.content.startsWith(CONFIG.devPrefix))
|| msg.author.bot) return;
const args = msg.content.slice(CONFIG.prefix.length).split(' ');
const commandName = args.shift().toLowerCase();
//If the command doesn't exist
if (!botClient.commands.has(commandName)){
msg.reply("That command does not exist. Do a.commands for a list of all commands");
return;
}
const command = botClient.commands.get(commandName);
try {
command.execute(msg, args);
} catch (error) {
console.error(error);
console.log('Error when trying to get and execute a command.');
msg.reply('There was an error trying to execute that command.');
}
});
Спасибо