我正在创建具有最新版本v12的Discord机器人,在添加时我遇到了问题 成员的角色。
我知道User对象没有任何角色,但是成员应该具有文档所述的作用。 这就是我获得用户的方式:
let member = msg.mentions.members.first();
这是我添加角色的方式:
member.roles.add(role);
但是,我遇到了这个错误:
TypeError: Cannot read property 'roles' of undefined
上下文:
if(args[0] == 'blacklist'){
if(args[1] != null){
if(args[2] != null){
let member = msg.mentions.members.first();
let role = (msg.member.guild.roles.cache.find(role => role.name === 'muted'));
member.roles.add(role);
} else {
msg.channel.send('> Error: missing reason');
}
} else {
msg.channel.send('> Error: missing userID');
}
}`
答案 0 :(得分:0)
如果消息中没有提及,则需要添加检查。
if(args[0] == 'blacklist'){
if(args[1] != null){
if(args[2] != null){
let member = msg.mentions.members.first();
if (!member) return msg.reply('Pls mention a member')
let role = (msg.member.guild.roles.cache.find(role => role.name === 'muted'));
member.roles.add(role);
} else {
msg.channel.send('> Error: missing reason');
}
} else {
msg.channel.send('> Error: missing userID');
}
}