Javascript discord.js message.channel不是一个函数
我试图让我的机器人删除特定频道中的非图像邮件Javascript discord.js message.channel不是一个函数,javascript,discord.js,Javascript,Discord.js,我试图让我的机器人删除特定频道中的非图像邮件 client.on("message", (message) => { let channel = client.channels.get(`642417479708049418`); if(!message.channel(channel)) { return } else { if(message.embeds.length > 0) { return } else {
client.on("message", (message) => {
let channel = client.channels.get(`642417479708049418`);
if(!message.channel(channel)) {
return
} else {
if(message.embeds.length > 0) {
return
} else {
message.delete();
message.channel.send("images only");
}
}
});
错误表明message.channel不是函数。错误在
中!message.channel(channel)
,要验证该频道是否是您想要的频道,因为您已经有了channel变量,只需比较两个ID,您还应该添加一个检查,查看消息是否来自bot,以便bot不会陷入删除自己消息的循环中:
client.on("message", (message) => {
if (message.author.bot) return;
let channel = client.channels.get(`642417479708049418`);
if (message.channel.id != channel.id) {
return
} else {
if (message.embeds.length > 0) {
return
} else {
message.channel.send("images only");
message.delete();
}
}
});
当您在message.delete()中删除消息时,也会出现这种情况代码>确保首先发送您想要发送的响应,因此按以下顺序发送:
message.channel.send("images only");
message.delete();
移除的问题是机器人不知道我想要的1个通道,因为你希望代码只在一个特定的通道中运行,对吗?是的。ID为variable的频道我添加了一段新代码,看看它是否适合你使用它,它在发送消息和删除消息的循环中运行