当前位置: 首页 > 知识库问答 >
问题:

不一致js无法从公会中找到角色

裴俊智
2023-03-14

我正在使用discord.js制作一个不和谐机器人,然而,它不让我得到公会的角色并找到一个特定的角色。这有点令人困惑,所以这是代码:

//Note: this is inside a messageReactionAdd event
let guild = reaction.message.guild;
console.log(guild.id);
console.log(guild.roles);
let role = guild.roles.cache.find(r => r.name == "Member");
reaction.member.roles.add(role);

控制台会显示公会ID和角色与信息的长映射,但在定义角色的行中,它会指出角色不是未定义的属性。我不知道它为什么这样做。


共有1个答案

乐正瑞
2023-03-14
匿名用户

你的问题不在于角色本身,而在于反应。成员。反应没有成员属性。

只要改变这个-

reaction.member.roles.add(role);

到(MessageReactionAdd有用户参数)-

guild.members.cache.get(user.id).roles.add(role)

 类似资料:
  • 我正试图为不和谐做一个会员机器人。机器人将从API中检索用户ID和角色,并需要从用户中删除此角色。 首先,我要了解特定用户所在的公会: 然后,我通过名称查找角色: 然后我试图通过他的ID找到用户,并删除上面的角色。但是,用户始终未定义: 通常,当我添加一个角色时,我会使用消息对象,然后像这样使用消息中的公会: 但是,我从API中检索数据,因此我必须以另一种方式进行。 我的脚本的完整代码:

  • 我不知道为什么我的反应角色代码不起作用。如果有人能帮助我,我将不胜感激! message函数用于缓存消息,以便bot可以检测对该消息的反应,如果确实需要的话,Idk。 也没有错误,只是没有给我角色。

  • 我试图将所有用户从一个具有特定角色的VC中转移出来,例如:!召唤@role 这样,所有具有特定角色的用户都应该来到VC,用户在那里键入该命令 目前我的代码是这样的: 目前,我正在移动所有用户,但是我只希望用户具有知情的角色 我试着用: 但是没有成功。。。有人能帮我解决这个问题吗?

  • 我想发送消息,如果作者有角色,但如果我尝试此代码不工作(角色的id是正确的)。

  • 我有一个程序可以将USB数据记录到我创建的文件中,它工作正常。我正在尝试使用setText显示其中的一些数据,但setText正确执行一次,然后下次调用它时,我得到了一个未找到源的崩溃。 在此运行中,我将USB数据保存到我的文件中: 如果我rem掉上面的setText行,程序就会运行得很愉快,将数据保存到一个文件中。当我像上面那样运行代码时,程序崩溃了,我得到了一个未找到源代码的指示。 如果我在s

  • 我有个麻烦,我一点也不懂。该函数在我的服务器上工作,而在另一个服务器上不工作。这是我的密码: 错误是: (节点: 11288)UnhandledPromiseRejtionWarning: TypeError:无法读取属性'user'的null在Object.run(C:\用户\Alumetryu\桌面\bot\命令\info\serverinfo.js:20: 48)在客户端。(C:\用户\Al