为什么执行我的漫游器时我的消息未定义?

时间:2020-05-20 00:55:41

标签: javascript discord discord.js

大家好:)绝对是新手,我想为我的不和谐机器人做一些有趣的小命令。它抛出一条消息未定义的错误和即时消息在我的绳子尽头。我确定这是一条简单的领带,我应该能够理解,但不幸的是我愚蠢了。任何帮助是极大的赞赏!如果有帮助,请使用以下代码-

 case 'shell' :
            const personTagged = message.mentions.members.first();

            if(!args[1]) {
                message.channel.send('you aint writing it right sTOOPID!')
            }else{
                message.channel.send(message.author.username + ' has shelled ' + personTagged.displayName + ' ' + doshellAction())
            }

            break;

1 个答案:

答案 0 :(得分:0)

discord.js homepage上的示例代码为:

const Discord = require('discord.js');
const client = new Discord.Client();

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
});

client.on('message', msg => {
  if (msg.content === 'ping') {
    msg.reply('Pong!');
  }
});

client.login('token');

您需要类似这样的代码,机器人才能通过Discord进行身份验证并侦听消息。在此示例代码中实现的代码简化版如下:

const Discord = require('discord.js');
const client = new Discord.Client();

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
});

client.on('message', message => { // This is where message comes from!
  // message will be defined in this code block
  let personTagged = message.mentions.members.first();
  message.channel.send(message.author.username + ' has shelled ' + personTagged.displayName + ' ' + doshellAction());
});

client.login('token');