Javascript 创建类似菜单的结构(discord.js)
我想创建一个bot可以执行的项目菜单,然后用户可以选择要执行的操作 例如: 当我说Javascript 创建类似菜单的结构(discord.js),javascript,node.js,discord.js,Javascript,Node.js,Discord.js,我想创建一个bot可以执行的项目菜单,然后用户可以选择要执行的操作 例如: 当我说+Menu时,bot会显示如下内容: 1. Time in NY 2. Movies currently running 3. Sports News 然后我想接受用户的输入(1、2或3),然后根据他们的选择,机器人将执行任务。 但是我不知道如何在命令(+菜单)后读取用户的输入,并想寻求帮助。您正在寻找一个消息收集器。见文件 就我个人而言,我会创建一个包含选项的嵌入 const menuEmbed=new Dis
+Menu
时,bot会显示如下内容:
1. Time in NY
2. Movies currently running
3. Sports News
然后我想接受用户的输入(1、2或3),然后根据他们的选择,机器人将执行任务。
但是我不知道如何在命令(+菜单)后读取用户的输入,并想寻求帮助。您正在寻找一个
消息收集器。见文件
就我个人而言,我会创建一个包含选项的嵌入
const menuEmbed=new Discord.MessageEmbed()
.setTitle(“菜单”)
addFields先生(
{name:“1.”,value:“纽约时间”},
{name:“2.”,value:“Movies current running”},
{名称:“3.”,值:“体育新闻”}
);
message.channel.send(menuEmbed)。然后(()=>{
常量过滤器=(用户)=>{
return user.author.id===message.author.id//仅从发送命令的用户收集消息
};
试一试{
let collected=await message.channel.await messages(过滤器,{max:1,时间:15000,错误:['time']});
let choice=collected.first().content;//接受用户输入并保存它
//在这里执行死刑
}
捕获(e)
{
return message.channel.send(`:x:Setup cancelled-0封邮件已在时间限制内收集,请重试`)。然后(m=>m.delete({timeout:4000}));
};
});
然后使用收集器让用户选择一个选项
请记住,这是在使用async/await
,并且必须处于async
功能中。您可以使用消息或反应收集器。请在此处查看: