Javascript 当静音用户离开服务器时,静音角色将保存给静音用户

Javascript 当静音用户离开服务器时,静音角色将保存给静音用户,javascript,discord,discord.js,quick.db,Javascript,Discord,Discord.js,Quick.db,这是我的代码,但当某人离开服务器并重新加入服务器时,我赋予他静音角色时,该角色将消失,当我使用quick.db时,该怎么做才能使其正常工作 const ms=require('ms') 常量计时器=新映射(); on('message',异步nxt=>{ if(nxt.content.startsWith(前缀+“角色”)){ var args=nxt.content.slice(prefix.length.trim().split(+/+/g); 如果(!nxt.member.hasPermi

这是我的代码,但当某人离开服务器并重新加入服务器时,我赋予他静音角色时,该角色将消失,当我使用quick.db时,该怎么做才能使其正常工作

const ms=require('ms')
常量计时器=新映射();
on('message',异步nxt=>{
if(nxt.content.startsWith(前缀+“角色”)){
var args=nxt.content.slice(prefix.length.trim().split(+/+/g);
如果(!nxt.member.hasPermission('MANAGE_ROLES'))返回nxt.channel.send(“您没有权限”)
var member=nxt.indications.members.first();
变量时间=args[3]
var role=nxt.indications.roles.first();
如果(!role)返回nxt.channel.send(“我找不到这个角色”)
如果(!member)返回nxt.channel.send(“请提及某人”)
如果(!time)返回nxt.channel.send(“请指定时间”)
如果(!time.endsWith(“d”)){
如果(!time.endsWith(“h”)){
如果(!time.endsWith(“m”)){
如果(!time.endsWith(“s”)){
返回nxt.channel.send('请指定时间')
}}}}
timer.set(nxt.author.id{
作者:{
标签:nxt.author.tag,
},
时间:毫秒(时间),
});
等待成员.角色.添加(角色)
反应(`✅`)
setTimeout(异步()=>{
等待成员.角色.删除(角色)
timer.delete(nxt.author.id);
},毫秒(时间))
}});```
我怎样才能让哑巴角色回归呢?

首先在代码中添加这一行

//使用quick.db
让muteTime=Date.now()+时间;
db.set(`muted{message.guild.id}{target.id}`,muteTime);
然后,当一个成员加入时,会执行此操作

client.on('guildMemberAdd',member=>{
让MuteStatus=db.get(`muted_${member.guild.id}{u${member.id}`);
如果(!MuteStatus){
//这个成员没有被静音
返回(0);
}
如果(MuteStatus>Date.now()){
//他沉默了一下,然后重新加入
//还角色
让TimeLeft=MuteStatus-Date.now();
wait member.roles.add(MuteRole)//给被静音的角色
setTimeout(异步()=>{
等待成员.roles.remove(MuteRole);
},时间限制);
}
});

我这样做了,兄弟,谢谢你的帮助,但问题是,当有人重新加入服务器时,机器人没有被赋予静音角色:/