我正在尝试为用户分配角色,但随后出现此错误:
error: member is not defined.
我想为新用户授予 Test
角色。
这是我的尝试:
client.on('message' , (message) =>{
if(!message.member.user.bot && message.guild){
if(message.content == '!test'){
var role = member.guild.roles.cache.find(role => role.name == "Test");
member.roles.add(role);
}
}
})
client.login(config.token)
答案 0 :(得分:0)
您的问题出在这一行:
var role = member.guild.roles.cache.find(role => role.name == "Test");
还有这个:
member.roles.add(role);
因为您没有定义 member
。我想你只是忘记了开头的 message.
。
你应该把它改成这样:
var role = message.member.guild.roles.cache.find(role => role.name == "Test");
message.member.roles.add(role);
您可以考虑通过角色的 ID
获取角色,以防名称发生更改。
然后你想使用:
message.member.roles.cache.has(role.id)