繁体   English   中英

Discord.js:将特定服务器上的角色添加到 DM 机器人的用户

[英]Discord.js : Add a role on a specific server to a user that DM the bot

我目前正在开发一个 discord 机器人,我想将我的服务器上的角色“成员”添加到 DM 机器人的任何用户。 但是我无法使 addRole 工作。 我不断收到以下错误:

类型错误:member.guild.roles.cache.addRole 不是 function

这是我的代码:

let server = client.guilds.cache.get('myserverID')
var memberRole= server.roles.cache.find(role => role.name === "Member")
let member = server.members.cache.get(msg.author.id);
member.guild.roles.cache.addRole(memberRole)

有人可以帮我吗?

那是因为该方法不存在:您需要使用的方法是GuildMember.roles.add()
以下是如何将其应用于您的代码:

let server = client.guilds.cache.get('myserverID')
var memberRole= server.roles.cache.find(role => role.name === "Member")
let member = server.members.cache.get(msg.author.id)

member.roles.add(memberRole)

试试member.guild.roles.cache.roles.add(memberRole); 而不是member.roles.add(memberRole);

它是

 member.guild.roles.cache.add(memberRole)

不是

member.guild.roles.cache.addRole(memberRole)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM