如何修复Ban命令不起作用Discord.js v12



ping命令有效,但当我尝试使用ban命令时,它什么都不做。它甚至不会登录到控制台。我试过了discord.js@12.5.3和discord.js@12.3.1.我也试过在另一台计算机上运行我的代码,但仍然无法运行。

这是我的代码:

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

client.on('message', message => {
if (message.content === '!ping') {
message.channel.send('Pong!');
} else if (message.content === '!getBanned') {
const member = message.mentions.members.first();
if (!member) {
console.log('member not found');
} else {
member.ban();
}
}
});```

这是因为在代码的检查message.content是否等于'!getBanned',您使用了相等运算符===。所以现在消息的整个内容必须完全是!getBanned,所以当您使用例如!getBanned @Wumpus时,消息的内容是不相等的。有很多方法可以解决这个问题,但现在你应该只使用string.startsWith()函数:

if (message.content.startsWith("!getBanned") {
// put all the code that gets the member mention and bans the member here
}

最新更新