Javascript 根据discord.js V12中的反应指定角色时出错

Javascript 根据discord.js V12中的反应指定角色时出错,javascript,node.js,discord.js,Javascript,Node.js,Discord.js,错误 (节点:6880)未处理的PromisejectionWarning:TypeError:无法读取未定义的属性“roles” 在客户端。(C:\Users\Pc\Desktop\RemakeTO\bot.js:307:23) 在Client.emit(events.js:327:22) 在WebSocketShard.onMessage(C:\Users\Pc\Desktop\RemakeTO\node\U modules\discord.js\src\client\websocket\W

错误

(节点:6880)未处理的PromisejectionWarning:TypeError:无法读取未定义的属性“roles”
在客户端。(C:\Users\Pc\Desktop\RemakeTO\bot.js:307:23)
在Client.emit(events.js:327:22)
在WebSocketShard.onMessage(C:\Users\Pc\Desktop\RemakeTO\node\U modules\discord.js\src\client\websocket\WebSocketShard.js:295:27)
在WebSocket.onMessage(C:\Users\Pc\Desktop\RemakeTO\node\u modules\ws\lib\event target.js:132:16)
在WebSocket.emit(events.js:315:20)
在Receiver.receiverOnMessage(C:\Users\Pc\Desktop\RemakeTO\node\u modules\ws\lib\websocket.js:825:20)
在Receiver.emit(events.js:315:20)
在Receiver.dataMessage(C:\Users\Pc\Desktop\RemakeTO\node\u modules\ws\lib\Receiver.js:437:14)
在Receiver.getData(C:\Users\Pc\Desktop\RemakeTO\node\u modules\ws\lib\Receiver.js:367:17)
在Receiver.startoop(C:\Users\Pc\Desktop\RemakeTO\node\u modules\ws\lib\Receiver.js:143:22)
(使用`node--trace warnings…`显示警告的创建位置)
(节点:6880)未处理的PromisejectionWarning:未处理的承诺拒绝。此错误源于在没有catch块的异步函数中抛出,或者拒绝未使用.catch()处理的承诺。要在未处理的承诺拒绝时终止节点进程,请使用CLI标志“---unhandled rejections=strict”(请参阅https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (拒绝id:1)
(节点:6880)[DEP0018]弃用警告:未处理的承诺拒绝已弃用。将来,未处理的承诺拒绝将使用非零退出代码终止Node.js进程。
代码

/*
****康斯坦茨
*/
const Discord=require(“Discord.js”)//Aqui definimos a discord.js em nosso código,caso dêerro nessa linha,sódênpm i discord.js无控制台;v
const bot=new Discord.Client()//Aqui definimos o bot(bot)
const config=require(“./config.js”)//Aqui definimos o config.js em nosso código,ele vai servir pro bot logar e sabermos o prefix do bot sem definir algo novatement,caso dêerro nessa linha,check o arquivo config.js,digitaèo dessa linha e se o arquivo config.js a意大利面实用程序:v
const fs=require(“fs”)//Aqui definimos o fs em nosso código,ele vai servir pro nosso Handler,caso dêerro nessa linha,sódênpm i fs no console;v
bot.commands=new Discord.Collection();
bot.alias=new Discord.Collection();
/*
****处理者
*/
fs.readdir(“./comandos/”,(错误,文件)=>{//pedimos para o fs ler a comandos
if(err)返回console.log(`Houve um erro:\n${err}`);//se tiver um erro,ele não executaráo que estiver abaixo e iráretronar com um log no console
让jsfile=files.filter(f=>f.split(“.”.pop()===“js”)//获取一个gente定义文件para diferenceiar os arquivos com.js dos sem.js
如果(jsfile.length{//aqui dizemos que para cada arquivo com.js na面食,iremos fazer a seguinte coisa:
let pull=require(`./comandos/${f}`);//iremos definir comando
bot.commands.set(pull.config.name,pull);//iremos setar o nome do comando/本地na集合comandos
log(`[Carregando]>${f}`);//aqui colocamos para que o bot envi os comandos carregados para o console
pull.config.aliases.forEach(别名=>{//aqui dizemos que para cada别名do comand
bot.aliases.set(alias,pull.config.name)//setar a aliases/nome do comando na集合别名
});
});
});
/*
****普里梅罗事件
*/
让状态=[
{name:`Skins no Netflix!`,键入:`WATCHING`,
{name:`a felicidade!`,键入:“流”,url:https://www.twitch.tv/zpandakst_"},
{name:`o jogo da vida!`,键入:`PLAYING`,
//{名称:'msg4',类型:'STREAMING',url:'https://www.twitch.tv/hinami_fueguchi_'}, 
];
//流=传输
//倾听=乌文多
//玩耍=慢跑
//观看=协助
bot.on('ready',()=>{
var embed=newdiscord.MessageEmbed()
.setTitle(`:pushpin:| Iniciando…`)
.setDescription(`:white_small_square:| Utilitários**Iniciado**\n\n护墙板:\n▸ Usuários:${bot.users.size}\n▸ Canais:${bot.channels.size}`)
.set缩略图(bot.user.avatarURL)
.setTimestamp()文件
bot.channels.cache.get(`814858116021616670`).发送(嵌入);
//bot.guilds.get(`771513497069682711`).channels.get(`814858116021616670`).发送(嵌入)
函数setStatus(){
让randomStatus=status[Math.floor(Math.random()*status.length)];
bot.user.setPresence({game:randomStatus});
}
setStatus();
setInterval(()=>setStatus(),7000);/{1000/1s}{10000/10s}{100000/1m}
});
bot.on(“就绪”,()=>{
console.log('Estou online'))
/*
*PLAYING=Jogando.Exemplo-bot.user.setActivity('oi',{type:'PLAYING'});
*WATCHING=Assistindo.Exemplo-bot.user.setActivity('oi',{type:'WATCHING'});
*LISTENING=Ouvindo.Exemplo-bot.user.setActivity('oi',{type:'LISTENING'});
*STREAMING=Transmitindo.Exemplo-bot.user.setActivity('oi',{type:'STREAMING',url:'twitch'});
*/
});
/*
****事件加入
*/
bot.on('guildMemberAdd',guildMember=>{
让semRegistro=guildMember.roles.cache.find(role=>role.id=='818270808543723520');
让separatorRole1=guildMember.roles.cache.find(role=>role.id=='7863642885205522449');
让separatorRole2=guildMember.roles.cache.find(role=>role.id=='786364299940593666');
让separatorRole3=guildMember.roles.cache.find(role=>role.id=='786364304579624970');
让separatorRole4=guildMember.roles.cache.find(role=>role.id=='786364307650379816');
让separatorRole5=guildMember.roles.cache.find(role=>role.id=='786364310954835999');
让separatorRole6=guildMember.roles.cache.find(role=>role.id=='786364313274679336');
注册会员:addRole(semRegistro);
guildMember.addRole(单独
(node:6880) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'roles' of undefined
    at Client.<anonymous> (C:\Users\Pc\Desktop\RemakeTO\bot.js:307:23)
    at Client.emit (events.js:327:22)
    at WebSocketShard.onMessage (C:\Users\Pc\Desktop\RemakeTO\node_modules\discord.js\src\client\websocket\WebSocketShard.js:295:27)
    at WebSocket.onMessage (C:\Users\Pc\Desktop\RemakeTO\node_modules\ws\lib\event-target.js:132:16)
    at WebSocket.emit (events.js:315:20)
    at Receiver.receiverOnMessage (C:\Users\Pc\Desktop\RemakeTO\node_modules\ws\lib\websocket.js:825:20)
    at Receiver.emit (events.js:315:20)
    at Receiver.dataMessage (C:\Users\Pc\Desktop\RemakeTO\node_modules\ws\lib\receiver.js:437:14)
    at Receiver.getData (C:\Users\Pc\Desktop\RemakeTO\node_modules\ws\lib\receiver.js:367:17)
    at Receiver.startLoop (C:\Users\Pc\Desktop\RemakeTO\node_modules\ws\lib\receiver.js:143:22)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:6880) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:6880) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.