Discord.js 用于删除所有不是机器人命令的消息
Posted
技术标签:
【中文标题】Discord.js 用于删除所有不是机器人命令的消息【英文标题】:Discord.js for deleting all messages that are not bot commands 【发布时间】: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 中的第一个项目,所以我知道我肯定在某个地方搞砸了,但我就是想不出还有什么办法来修复它。
非常感谢!
【问题讨论】:
【参考方案1】:最后if
语句中的逻辑有缺陷,你需要使用这个:
if(![">fish", ">fishinglvl", ">leaderboard fishing"].includes(message.content))
【讨论】:
非常感谢!这立即修复了它。非常感谢你 - 我整个下午都在为这么简单的事情而发疯,哈哈!将批准您的答案 A.S.A.P!以上是关于Discord.js 用于删除所有不是机器人命令的消息的主要内容,如果未能解决你的问题,请参考以下文章