【问题标题】:Discord.js cannot find role from guildDiscord.js 无法从公会中找到角色
【发布时间】:2023-03-25 18:39:01
【问题描述】:

我正在使用 discord.js 制作一个 Discord 机器人,但是,它不允许我获得公会的角色并找到特定的角色。这有点令人困惑,所以这里是代码:

//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 以及角色和信息的长图,但它在定义 role 的行中显示 roles is not a property of undefined。我不知道它为什么这样做。

【问题讨论】:

  • 此命令是否正在 DM 中进行测试?如果消息对象位于 DM 中,则消息对象将没有 guild 属性。
  • 它在服务器中。我还指出,它确实在控制台中记录了公会 ID 和角色列表。

标签: javascript node.js discord discord.js roles


【解决方案1】:

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

只要改变这个->

reaction.member.roles.add(role);

收件人(messageReactionAdd 有用户参数)->

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

【讨论】:

    猜你喜欢
    • 2021-08-12
    • 2020-11-30
    • 2019-01-11
    • 2020-12-17
    • 1970-01-01
    • 2020-01-04
    • 2020-07-07
    • 2020-11-13
    • 2022-01-14
    相关资源
    最近更新 更多