javascript - 如何将角色添加到公会成员?
问题描述
我试图给用户一个角色,但后来我收到了这个错误:
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)
解决方案
您的问题出在这一行:
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)
推荐阅读
- xcode - Apple TV 未显示在 Xcode > 设备和模拟器菜单中
- windows - Windows 上 docker compose 中的映射文件夹
- animation - 如何使用 SVG 径向动画循环颜色并保持边缘透明度?
- javascript - 如果超过 2000 点,Highstock.js 显示不正确的值
- java - 某些 Android 设备中的慢速数据速率 TCP/IP 套接字通信
- mysql - 按累积分组计算的不同项目数
- python - 如何为迭代的每一列创建变量?
- c# - .NET 核心在 VS 代码中引发多个错误
- react-native - 引用错误:在 Jest 环境被拆除后,`import` 一个文件
- django - 在同一 post_detail 页面中实现对帖子的编辑/删除评论