Javascript 如何在命令处理程序中运行嵌入命令

Javascript 如何在命令处理程序中运行嵌入命令,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,好的,对于我的命令处理程序,我有: bot.commands = new Discord.Collection(); const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js')); for(const file of commandFiles){ const command = require(`./commands/${file}`); bot.comma

好的,对于我的命令处理程序,我有:

bot.commands = new Discord.Collection();

const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
for(const file of commandFiles){
    const command = require(`./commands/${file}`);

    bot.commands.set(command.name, command);
}

bot.on('ready', () => {
    console.log(`${bot.user.username} is eating ${bot.guilds.size} shots of cum`)
    bot.user.setActivity("my girlfriend and her husband have sex", {type: "WATCHING"});
});

bot.on('message', message => {
    let args = message.content.substring(PREFIX.length).split(" ");

    switch (args[0]) {

        case "ping":
            bot.commands.get('ping').execute(message, args);
        break;

        case "myinfo":
                bot.commands.get('myinfo').execute(embed, args);
        break;
    }
“ping”命令有效,但“myinfo”命令无效

我的“MyInfo”代码是:

我得到的错误是:

C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\index.js:33
                bot.commands.get('myinfo').execute(embed, args);
                                          ^

TypeError: Cannot read property 'execute' of undefined
    at Client.<anonymous> (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\index.js:33:43)
    at Client.emit (events.js:210:5)
    at MessageCreateHandler.handle (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\discord.js\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
    at WebSocketPacketManager.handle (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:105:65)
    at WebSocketConnection.onPacket (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:333:35)
    at WebSocketConnection.onMessage (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:296:17)
    at WebSocket.onMessage (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\ws\lib\event-target.js:120:16)
    at WebSocket.emit (events.js:210:5)
    at Receiver.receiverOnMessage (C:\Users\U\Desktop\Folders\Downloads, Setup, and Uninstall Files\Code\CharlesBot\node_modules\ws\lib\websocket.js:789:20)
    at Receiver.emit (events.js:210:5)
C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\code\CharlesBot\index.js:33
bot.commands.get('myinfo').execute(嵌入,args);
^
TypeError:无法读取未定义的属性“execute”
在客户端。(C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\Code\CharlesBot\index.js:33:43)
在Client.emit(events.js:210:5)
在MessageCreateHandler.handle(C:\Users\U\Desktop\Folders\Downloads,Setup,and Uninstall Files\Code\CharlesBot\node\U modules\discord.js\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
在WebSocketPacketManager.handle(C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\Code\CharlesBot\node\U modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:105:65)
在WebSocketConnection.onPacket(C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\Code\CharlesBot\node\U modules\discord.js\src\client\websocket\WebSocketConnection.js:333:35)
在WebSocketConnection.onMessage(C:\Users\U\Desktop\Folders\Downloads,Setup,and Uninstall Files\Code\CharlesBot\node\U modules\discord.js\src\client\websocket\WebSocketConnection.js:296:17)
在WebSocket.onMessage(C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\Code\CharlesBot\node\U modules\ws\lib\event target.js:120:16)
在WebSocket.emit(events.js:210:5)
在Receiver.receiverOnMessage(C:\Users\U\Desktop\Folders\Downloads、Setup和Uninstall Files\Code\CharlesBot\node\U modules\ws\lib\websocket.js:789:20)
在Receiver.emit(events.js:210:5)

我是根据教程来做这件事的,对node.js了解不多。对于命令处理程序,他只演示了如何进行嵌入,只演示了普通文本。我知道它可能很简单,但我已经使用它几个小时了。

在myinfo命令中有这些东西。我认为您可以将ping文件复制并粘贴到myinfo文件中,并更改了代码,但是您还需要更改命令的名称和描述

module.exports = {
  name: "ping",
  description: "says ping!",

您需要使用myinfo值更改它们,以使其正常工作。如
名称:“myinfo”,说明:“显示我的信息”

您只导出一个命令<代码>ping。您希望它如何找到
myinfo
?啊,谢谢。我应该直接用手把它打出来。谢谢,没问题
module.exports = {
  name: "ping",
  description: "says ping!",