Discord.js: ReferenceError: message is not defined



我正在尝试在repl上编码。我在"信息"方面遇到了问题。出现错误:

ReferenceError: message is not defined
at /home/runner/lifeafterbot/index.js:12:1
at Script.runInContext (vm.js:130:18)
at Object.<anonymous> (/run_dir/interp.js:209:20)
at Module._compile (internal/modules/cjs/loader.js:1137:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
at Module.load (internal/modules/cjs/loader.js:985:32)
at Function.Module._load (internal/modules/cjs/loader.js:878:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47Hint: hit control+c anytime to enter REPL.
下面是我的代码:
let Discord = require ("discord.js");
let client = new Discord.Client();

client.on("ready", () => {
client.user.setPresence({ activity: {name: "Minecraft" }})
});

if (message.content.startsWith('!ban')) {
if(message.member.hasPermission("BAN_MEMBERS")) {
const user = message.mentions.users.first();
if (user) {
const member = message.guild.member(user);
if (member) {
member
.ban({
reason: 'They were bad!',
}).then(() => {
// We let the message author know we were able to ban the person
message.reply("Successfully banned ${user.tag}");
}).catch(err => {
message.reply("I was unable to ban the member");
console.error(err);
});
} else {   
message.reply("That user isn't in this guild!");
}
} else { 
message.reply("You didn't mention the user to ban!");
}
}
}    
client.login

你能帮帮我,告诉我出了什么事吗?我会非常感激的!

您必须检查使用

发送的消息
client.on("message", async message => {
})

你的更正代码应该是:

let Discord = require("discord.js");
let client = new Discord.Client();
client.on("ready", () => {
client.user.setPresence({ activity: { name: "Minecraft" } });
});
client.on("message", async (message) => {
if (message.content.startsWith("!ban")) {
if (message.member.hasPermission("BAN_MEMBERS")) {
const user = message.mentions.users.first();
if (user) {
const member = message.guild.member(user);
if (member) {
member
.ban({
reason: "They were bad!",
})
.then(() => {
// We let the message author know we were able to ban the person
message.reply("Successfully banned ${user.tag}");
})
.catch((err) => {
message.reply("I was unable to ban the member");
console.error(err);
});
} else {
message.reply("That user isn't in this guild!");
}
} else {
message.reply("You didn't mention the user to ban!");
}
}
}
});
client.login;

最新更新