所以我正在制作一个不和谐的机器人,问题就在这里:
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: Cannot read property 'join' of undefined
最佳答案
您必须先定义参数。你是如何定义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
};
};
关于bots - 类型错误 : Cannot read property 'join' of undefined discord bot js say command,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61787169/