Discord.js v12 - 如何添加角色?

Posted

技术标签:

【中文标题】Discord.js v12 - 如何添加角色?【英文标题】:Discord.js v12 - How to add a role? 【发布时间】:2021-04-10 03:25:05 【问题描述】:
if (message.content == '/lv') 
    message.member.roles.add('705757268448378971');
    message.react('✅') 

if (message.content == '/lv remove') 
    message.member.roles.remove('705757268448378971');
    message.react('✅')

//TypeError: Cannot read property 'add' of undefined

代码应该在“/lv”命令后添加角色到成员,并在“/lv remove”后删除相同的角色。以前与 addRole 完美配合。

【问题讨论】:

您是否尝试登录message.member?它包含什么? 【参考方案1】:

尝试将角色存储在变量中。

let role = message.guild.roles.cache.get("705757268448378971");

然后你可以尝试将角色添加到成员中:

if (message.content == '/lv') 
    message.member.roles.add(role);
    message.react('✅') 

if (message.content == '/lv remove') 
    message.member.roles.remove(role);
    message.react('✅')

如果message.member.roles.add 仍然不起作用,请尝试:

message.guild.member(message.member).roles.add(role);

【讨论】:

【参考方案2】:

经过一些挖掘和 3 个小时的折磨,我意识到我没有更改 Discord.js 版本。抱歉,我是 Discord.js 的新手。无论如何,谢谢你的回答。

【讨论】:

以上是关于Discord.js v12 - 如何添加角色?的主要内容,如果未能解决你的问题,请参考以下文章

如何添加 ID 保存在 JSON 文件 discord.js v12 中的角色?

如何检查我的机器人是不是可以在 discord.js v12 中添加角色?

Discord.js v12 角色添加到提到的用户问题

如何从用户 discord.js v12 中删除所有角色?

如何检查用户是不是具有特定角色 discord.js v12? [复制]

Discord.js V12 如何显示具有特定角色的所有成员?