TypeError:无法读取未定义的不和谐bot js say命令的属性'join'

时间:2020-05-14 00:27:10

标签: bots discord discord.js

所以我正在制造一个不和谐的机器人,这就是问题所在:

if(cmd === `${prefix}say`){
    if (!message.member.hasPermission("MANAGE_MESSAGE")) return message.reply("cant use this command");
    let botmessage = args.join(" ");
    message.delete().catch();
    message.channel.send(botmessage)
    for(var item=0; item<re.length; item++) 
    {}

当我打开.bat执行机器人时,它说:TypeError:无法读取未定义的属性“ join”

1 个答案:

答案 0 :(得分:0)

您必须先定义args。您如何定义cmd?如果您每次必须在命令中放入$ {prefix},那看起来并不方便。您可能还需要更改它。将这段代码放在代码中的较高位置

const prefix = "!";
const args = message.content.slice(prefix.length).trim().split(/ +/g);
const cmd = args.shift().toLowerCase();

(并且不要忘记删除您自己的“ cmd”定义!)

然后您可以通过以下方式简单地使用命令:

if (cmd === "say") {
  if (!message.member.hasPermission("MANAGE_MESSAGE")) return message.reply("cant use this command");
  let botmessage = args.join(" ");
  message.delete().catch();
  for (var item=0; item<re.length; item++) {
    // whatever there should go in
  };
};