无法使用 discord.js 获得角色
Posted
技术标签:
【中文标题】无法使用 discord.js 获得角色【英文标题】:Can't get role with discord.js 【发布时间】:2020-12-17 07:52:51 【问题描述】:我正在使用 discord.js
开发 Discord 机器人。下面的代码应该给选定的用户一个特定的角色。
const roleTag = message.guild.roles.cache.find(role => role.name === '<role name>');
const member = message.mentions.members.first();
member.roles.add(role);
但是每次我得到一个错误提示:
TypeError: Cannot read property 'roles' of undefined
注意:消息对象没有问题(我查过)
【问题讨论】:
好吧,您声称消息对象没有问题,但是您似乎没有得到 message.guild。这段代码 sn-p 有点太短了,你能说明如何获取/初始化消息对象吗? 如果message
对象没有问题,问题可能是您在dm
中发送消息,因此message.guild
返回未定义。
member
是否正确返回? (console.log(member)
看看)。
【参考方案1】:
你在哪里得到错误,在 add 函数或定义 roleTag 中?顺便说一句,您正在添加定义的角色,您正在添加 role 并且您将其命名为 roleTag
【讨论】:
以上是关于无法使用 discord.js 获得角色的主要内容,如果未能解决你的问题,请参考以下文章
Discord.js 使用 Express 添加角色 |无法读取未定义的属性“添加”
如何设置无法踢出具有更高角色的成员 - Discord.js