我希望编写仅特定角色可以访问的命令,并且想知道是否可以查询角色
我尝试做的是这样的
if (!message.member.role("CEO")) return;
我收到一条错误消息,指出.role不是函数
答案 0 :(得分:0)
message.member.role()
不是GuildMember
的有效属性,但是message.member.roles()
是Collection
。
您应该首先获取Role
对象。
// Get the role by ID
let myRole = message.guild.roles.get("264410914592129025");
// Get role by name
let myRole = message.guild.roles.find(role => role.name === "Admin");
要检查他们是否具有角色,请使用.has()
的{{1}}方法。
Collection
要检查他们是否具有以下多种角色之一:
message.member.roles.has(myRole)
message.member.roles.has("543965345763464434") // You can use the role ID directly because the roles are mapped by their ID.