Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.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_Node Modules_Discord.js - Fatal编程技术网

Javascript 有没有办法检查某人';增加了谁的角色?[Discord.js]

Javascript 有没有办法检查某人';增加了谁的角色?[Discord.js],javascript,node.js,node-modules,discord.js,Javascript,Node.js,Node Modules,Discord.js,我想知道某人何时得到一个角色,但我不知道该怎么做,也不知道是否真的有办法。我已经找了很久了。我想得到一些帮助 const Discord=require('Discord.js'); 让Bot=newdiscord.Client(); 异步函数GetDate(userid){ 如果(!userid)返回message.reply(“”) } Bot.on(“消息”,异步(消息)=>{ 让messageArray=message.content.split(“”); 设cmd=messageAr

我想知道某人何时得到一个角色,但我不知道该怎么做,也不知道是否真的有办法。我已经找了很久了。我想得到一些帮助

const Discord=require('Discord.js');
让Bot=newdiscord.Client();
异步函数GetDate(userid){
如果(!userid)返回message.reply(“”)
}
Bot.on(“消息”,异步(消息)=>{
让messageArray=message.content.split(“”);
设cmd=messageArray[0];
设args=messageArray.slice(1);
如果(cmd==`!GetDate`){
let User=args[0]
message.reply(`${User}是自2020-02-17以来的成员`)
}
});您可以侦听事件,然后获取类型为的审核日志,并获取审核日志entires

bot.on('guildMemberUpdate',(旧成员,新成员)=>{
if(oldMember.roles.size

V2

哦,所以你可以通过ID获得角色并获得角色

您可以侦听该事件,然后获取类型为的审核日志,并获取审核日志entires

bot.on('guildMemberUpdate',(旧成员,新成员)=>{
if(oldMember.roles.size

V2

哦,所以你可以通过ID获得角色并获得角色


您必须搜索审核日志,但这是可以完成的。这不是一项容易的任务,可能比一个简单的答案所能提供的要多。我建议查看GuildAuditLogs的官方文档。这取决于最近添加的角色。如果在可用审核日志的持续时间内,则为是,但审核日志似乎有限制。您必须搜索审核日志,但这是可以完成的。这不是一项容易的任务,可能比一个简单的答案所能提供的要多。我建议查看GuildAuditLogs的官方文档。这取决于最近添加的角色。如果它在可用审核日志的持续时间内,那么是的,但审核日志似乎有限制。谢谢,但这不是我想要的。我想检查添加某人角色的日期。我编辑我的答案,你可以通过ID获取角色并获取
。createdAT
,因此它是创建角色的日期。我想做一些类似于,当你使用命令时!getinfo(用户),当用户获得角色时输出。例如getinfo@CoolGuy#1234。它的输出类似于,Coolgay#1234在(日期)获得了名为“成员”的角色。所以您需要将我的第一个答案的操作插入数据库,然后选择它。Discord不更改向用户添加某个角色的日期。(使用任何简单的解决方案)。一个用户可以有10个、20个、50个、100个或200个角色,所以您必须知道要跟踪哪个角色。谢谢,但这不是我想要的。我想检查添加某人角色的日期。我编辑我的答案,你可以通过ID获取角色并获取
。createdAT
,因此它是创建角色的日期。我想做一些类似于,当你使用命令时!getinfo(用户),当用户获得角色时输出。例如getinfo@CoolGuy#1234。它的输出类似于,Coolgay#1234在(日期)获得了名为“成员”的角色。所以您需要将我的第一个答案的操作插入数据库,然后选择它。Discord不更改向用户添加某个角色的日期。(使用任何简单的解决方案)。一个用户可以有10个、20个、50个、100个或200个角色,所以您必须知道要跟踪哪个角色。
client.on('message', message => {
    let targetRole = message.guild.roles.get('PLACEROLEID')
    if(targetRole) console.log(targetRole.createdAt)
});