Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将这些命令放入命令处理程序?_Javascript_Node.js_Discord_Discord.js - Fatal编程技术网

Javascript 如何将这些命令放入命令处理程序?

Javascript 如何将这些命令放入命令处理程序?,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我刚刚完成了这个命令,我想为这个命令创建一个命令处理程序,但我不确定如何创建。我只是希望有人告诉我应该在命令处理程序文件和主文件中编写什么 这是我的密码: const fs=require('fs'); const Discord=require('Discord.js'); 常量前缀='s!'; const{MessageEmbed}=require('discord.js'); const client=new Discord.client(); client.on('ready',()=>

我刚刚完成了这个命令,我想为这个命令创建一个命令处理程序,但我不确定如何创建。我只是希望有人告诉我应该在命令处理程序文件和主文件中编写什么

这是我的密码:

const fs=require('fs');
const Discord=require('Discord.js');
常量前缀='s!';
const{MessageEmbed}=require('discord.js');
const client=new Discord.client();
client.on('ready',()=>{
log('ChatSlowMode在线!');
client.user.setActivity('s!help | s!invite'{
键入:“播放”,
});
});
client.on('消息',(消息)=>{
//检查消息是否以前缀开头,否则将停止您的代码。
如果(!message.content.startsWith(prefix)| | message.author.bot)返回;
const命令=message.content
.slice(前缀.length)
.toLowerCase()
.split(“”)[0]
.toLowerCase();
const args=message.content
.slice(前缀.length)
.拆分(“”)
.切片(1);
const embedOne=new MessageEmbed()
.setColor(“红色”)
.setTitle(“您无权访问此命令!”)
.setFooter(“您无法访问此调节命令”);
const embedTwo=新消息嵌入()
.setColor(“红色”)
.setTitle('请指定以秒为单位的时间')
.setFooter('您需要指定一个时间');
const embeddethree=新消息嵌入()
.setColor(“红色”)
.setTitle(
“这不是数字,请以秒为单位指定时间。`Example:5`”
)
.setFooter(“只键入数字,不要在其后添加任何内容。”);
const embedFour=新消息嵌入()
.setColor(“红色”)
.setTitle('无效数字!数字必须小于'21600`'))
.setFooter('时间必须小于21600秒');
const embedFive=新消息嵌入()
.setColor(“绿色”)
.setTitle(`Success!Slowmode已设置为**${args[0]}**seconds!`)
.setFooter(“Vuke制作的ChatSlowMode#0888”);
如果(命令=='slowmode'| |命令=='sm'){
如果(!message.member.hasPermission('MANAGE_CHANNELS'))
返回消息.channel.send(嵌入一个);
//检查“args[0]”是否不存在或不是数字。
if(!args[0])返回message.channel.send(两个);
if(isNaN(args[0])返回message.channel.send(三个);
//检查“validNumber”中是否包含解析为整数的“args[0]”`
if(args[0]>21600)返回message.channel.send(embeddefour);
//设置慢模式
如果(参数[0]<21600)
返回(
message.channel.setRateLimitPerUser(参数[0])&&
message.channel.send(嵌入式五)
);
}
});
client.login(“”);

我将通过一个简单的示例向您展示:

您的主文件可能如下所示(只需添加您没有的内容):

现在,您必须有一个名为
commands
的文件夹,您不能将其放入任何其他文件夹中。 现在,您的命令文件应该位于
commands
文件夹中,它应该如下所示:

module.exports = {
    name: 'ping',
    description: "The bot will respond with pong",
    execute(message, args){
        message.channel.send(`pong!`);
    }
}
对于每个新命令,您都将添加一位,如下所示:

if(command === '{name}'){ // so if you do &ping (& is the prefix here), it will execute the command named 'ping'
        client.commands.get('{commandName}').execute(message, args);
    };
{commandName}
是这样的东西:
name:'ping',
在命令文件中。如果您不明白这一点,我建议您查看任何youtube教程,我使用了以下教程:


如果这篇文章对你有帮助,请告诉我:)

欢迎来到SO!不幸的是,这里不是我们为您编写代码的地方。因此,如果您需要修复您编写的代码的特定问题。至于你的问题,我相信也应该有帮助,你不是已经问过这个问题了吗?
if(command === '{name}'){ // so if you do &ping (& is the prefix here), it will execute the command named 'ping'
        client.commands.get('{commandName}').execute(message, args);
    };