当有人在 Discord.js 中键入未知命令时,如何发出“无效命令”消息?

Posted

技术标签:

【中文标题】当有人在 Discord.js 中键入未知命令时,如何发出“无效命令”消息?【英文标题】:How do I make an "Invalid Command" message when someone types an unknown command in Discord.js? 【发布时间】:2020-06-08 09:25:34 【问题描述】:

我到处搜索,找到一小段代码告诉用户他们输入的命令不存在。

我找到了this,但我不明白,谁能解释(或简化)?

我的代码是here。

【问题讨论】:

【参考方案1】:

将可接受的命令放入数组中。

例如:

let userInputCommand = getUserInputCommand();

let validCommands = ["command1", "command2", "command3"];

let isValid = validCommands.includes(userInputCommand);

if(!isValid) 
  return message.channel.send("Please enter a valid command!");

使用.includes() 查看命令是否存在。 (getUserInputCommand() 只是一个例子,并不是指你的实际代码。)

【讨论】:

那么,如果命令无效,输出会是什么? (我使用if(command === '' 的东西)我会在底部做一个“else”声明,说类似if(command === invalidCommand) return message.channel.send("Please enter a valid command!") @AKASGaming 我更新了我的示例。总而言之,isValid 的真假取决于该命令是否在有效命令列表中。然后您可以使用isValid 来决定是否应该回复您的信息。在我给出的示例中,只有当 isValid 为 false 时才会到达返回消息。

以上是关于当有人在 Discord.js 中键入未知命令时,如何发出“无效命令”消息?的主要内容,如果未能解决你的问题,请参考以下文章

discord.js 用 1 个命令添加 3 个角色

我可以使用 messageEmbed 退货吗?

当有人使用 discord.js 加入服务器时发送欢迎消息

discord.js 说命令帮助 meeee

当用户对消息做出反应时,机器人会在 discord.js 中发送另一条消息

不断收到 DiscordAPIError:在 Discord.js 中的音乐机器人上使用 reconlx 的分页执行队列命令时出现未知交互