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的频道我添加了一段新代码,看看它是否适合你使用它,它在发送消息和删除消息的循环中运行