Javascript Discord.js命令处理程序bot不';不回答
您好,我在命令处理程序方面遇到了一个非常大的问题,我为此苦苦挣扎了很长时间,问题是我的机器人在添加命令后在我键入命令时没有响应,我在youtube上尝试了几种方法,但没有一种有效,非常感谢您的帮助 代码如下Javascript Discord.js命令处理程序bot不';不回答,javascript,node.js,discord.js,Javascript,Node.js,Discord.js,您好,我在命令处理程序方面遇到了一个非常大的问题,我为此苦苦挣扎了很长时间,问题是我的机器人在添加命令后在我键入命令时没有响应,我在youtube上尝试了几种方法,但没有一种有效,非常感谢您的帮助 代码如下 const Discord = require('discord.js'); const client = new Discord.Client(); const config = require('./config.json') const prefix = '$'; const fs
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require('./config.json')
const prefix = '$';
const fs = require('fs');
client.commands = new Discord.Collection();
client.events = new Discord.Collection();
const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
client.once('ready', () => {
console.log('Ready!')
});
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
client.commands.set(command.name, command);
}
client.on('message', async message => {
if (!message.content.startsWith(prefix) || message.author.bot) return;
const args = message.content.slice(prefix.length).trim().split(' ');
const command = args.shift().toLowerCase();
console.log(message.content);
if (command === `${prefix}ping`) {
client.commands.get('ping').execute(message, args);
}
});
client.login(config.token);
ping.js FILE!
module.exports = {
name: 'ping',
description: 'komenda ping',
execute(message, args) {
message.channel.send('Pong!');
},
};
问题是
命令
永远不会被${prefix}ping
,因为您已经使用.slice(prefix.length)
从消息中删除了前缀。检查并运行以下代码段:
const前缀='!'
常量消息={
内容:“!立即ping它”
}
const args=message.content.slice(prefix.length.trim().split(“”)
const command=args.shift().toLowerCase()
log({'message.content':message.content,command,args})
omg谢谢