【问题标题】:Discord.js for deleting all messages that are not bot commandsDiscord.js 用于删除所有不是机器人命令的消息
【发布时间】:2020-11-26 02:57:32
【问题描述】:

我正在尝试使用 node.js 制作一个简单的 Discord 机器人,删除任何不是由机器人编写的消息,或者不是 3 个允许的命令的消息;考虑一个反向白名单,其中频道中只允许使用特定的短语。

我一直在尝试添加 OR 运算符来过滤消息,但它保留的唯一消息是机器人或第一个给定字符串 (>fish) 的消息——我不知道如何保留使用列出的其他 2 个命令的消息。

client.on("message", (message) => {
  if(message.author == client.user)
    return
  if(message.author.bot)
    return
  if(message.content !== ">fish" | message.content !== ">fishinglvl" | message.content !== ">leaderboard fishing")
    return message.delete()
});

我也尝试了content.valueOf()、&& 和||,但均无济于事。 这是我在 Js 中的第一个项目,所以我知道我肯定在某个地方搞砸了,但我就是想不出还有什么办法来修复它。 非常感谢!

【问题讨论】:

    标签: node.js discord.js


    【解决方案1】:

    最后if语句中的逻辑有缺陷,你需要使用这个:

    if(![">fish", ">fishinglvl", ">leaderboard fishing"].includes(message.content))
    

    【讨论】:

    • 非常感谢!这立即修复了它。非常感谢你 - 我整个下午都在为这么简单的事情而发疯,哈哈!将批准您的答案 A.S.A.P!
    猜你喜欢
    • 2020-11-02
    • 2018-04-29
    • 2021-07-25
    • 2020-10-26
    • 2021-08-19
    • 2018-08-26
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    相关资源
    最近更新 更多