Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在discord.js中扮演反应角色?_Javascript_Node.js_Discord_Discord.js - Fatal编程技术网

Javascript 如何在discord.js中扮演反应角色?

Javascript 如何在discord.js中扮演反应角色?,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我想知道如何在discord.js bot中集成反应角色。我尝试过传统的messageReactionAdd方法,但似乎很难使其可扩展和可编辑,而且在许多行会中使用我的机器人后,它变得不可用。。。 我一直在尝试搜索使这成为可能的节点模块,但我发现的唯一一件事是,当我尝试将其集成到我的机器人中时,它只是使我的命令和东西不再工作,我尝试阅读如何使用该包生成反应角色,但没有任何效果。。。 我确实试过: const ReactionRole=require(“反应角色”); const system=n

我想知道如何在discord.js bot中集成反应角色。我尝试过传统的
messageReactionAdd
方法,但似乎很难使其可扩展和可编辑,而且在许多行会中使用我的机器人后,它变得不可用。。。 我一直在尝试搜索使这成为可能的节点模块,但我发现的唯一一件事是,当我尝试将其集成到我的机器人中时,它只是使我的命令和东西不再工作,我尝试阅读如何使用该包生成反应角色,但没有任何效果。。。 我确实试过:

const ReactionRole=require(“反应角色”);
const system=new ReactionRole(“我的令牌”);
让option1=system.createOption(“x:697809640147105878”,“697809380137107478”);
让option2=system.createOption(“emoji-1:720843460158698152”,“708355720436777033”);
让option3=system.createOption(“pepe:720623437466435626”,“703908514887761930”);
system.createMessage(“7255727821578898450”,“7021155621589484432”,2,null,option1,option2,option3);
system.init();
但正如我所说,它使我所有的命令都无法使用


希望有人能帮助我

您可以使用轻松实现,它支持
MongoDB
,这是一个数据库,因此您不再需要手动编辑bot

以下是如何做到这一点:
const{reactionrolemanger}=require('discord.js收集器')//我们导入discord.js-collector包,这将使反应角色成为可能
const{Client}=require('discord.js');//我们导入客户机构造函数来初始化新客户机
const client=new client()//我们创建了一个新客户机
const reactionRoleManager=新的reactionRoleManager(客户端{
//我们创建了一个反应角色管理器,它将处理与反应角色相关的所有事情
storage:true,//在Json文件中启用反应角色存储
路径:\ uu dirname+'/roles.json',//如果启用存储,将在何处保存角色
MongoBlink:'url mongoose链接',//请参见此处以了解安装mongoose的方式:https://github.com/IDjinn/Discord.js-Collector/tree/dev/examples/reaction-role-manager/Note.md & https://medium.com/@LondonAppBrewery/how-to-download-install-mongodb-on-windows-4ee4b3493514
});
client.on('ready',()=>{
console.log('ready');
});
client.on('message',异步(message)=>{
const client=message.client;
const args=message.content.split(“”).slice(1);
//范例
//>createReactionRole@role:emoji:MessageId
if(message.content.startsWith('>createReactionRole')){
const role=message.indications.roles.first();
如果(!角色)
回信
.reply('您需要提及一个角色')
.then((m)=>m.delete({timeout:1_000}));
const emoji=args[1];
如果(!表情符号)
回信
.reply('您需要使用有效的表情符号')
.then((m)=>m.delete({timeout:1_000}));
const msg=wait message.channel.messages.fetch(args[2]| | message.id);
如果(!角色)
回信
.reply('未找到邮件!')
.then((m)=>m.delete({timeout:1_000}));
reactionRoleManager.addRole({
讯息:msg,,
角色
表情符号,
});
message.reply('Done')。然后((m)=>m.delete({timeout:500}));
}
});
client.login('Token');
以下是现场预览:

你也可以用这个软件包做一些其他很酷的事情!如嵌入分页器、问题、是/否问题。。。 你都可以找到