我正在尝试制作一个分配人员角色的不和谐机器人。但是控制台说,每当我尝试测试未定义该成员的代码时,控制台都会失败。我是J.S.的新手所以可以给我发送一些我可以尝试的代码吗?
没有定义member
变量。您需要定义它才能使用它。您可以从msg
对象获取发送消息的人的GuildMember实例。如果查看Message
的文档,则可以看到它具有名为Message
的属性。尝试从member
对象定义member
。
msg
这里有一些代码希望对您有所帮助。
检查角色是否存在:
const member = msg.member;
角色变量(使后续步骤更容易):
if(!message.guild.roles.find(r => r.name === '{Role Name}')){
message.channel.sendMessage("Role not found.")};
检查他们是否已经担任该角色:
let role = message.guild.roles.find(r => r.name === '{Role Name}')
添加角色:
if (message.member.roles.find(role)) {
return message.channel.sendMessage('You already have role ' + role.name)
说他们现在具有角色(可选):
message.member.addRole(role);
再次,我真的希望这有助于为成员添加角色!