【问题标题】:add user to role with newest discord.js使用最新的 discord.js 将用户添加到角色
【发布时间】:2018-09-10 23:44:01
【问题描述】:

我在 node.js 中使用最新的 discord.js,我正在尝试将用户添加到角色,但似乎 bot.addUserToRole() 已被删除。

当我只知道等级名称而不知道它的ID时,我该怎么办?

【问题讨论】:

标签: javascript node.js discord.js


【解决方案1】:

这对我有用,希望对你有帮助!

var role= member.guild.roles.cache.find(role => role.name === "role name");
member.roles.add(role);

Here是上面的官方文档。

【讨论】:

    【解决方案2】:

    你可以这样做:

    var role = message.guild.roles.find(role => role.name === "MyRole");
    message.member.addRole(role);
    

    【讨论】:

    • 我使用的是完全相同的代码,但它不起作用。我得到的只是“TypeError:提供的参数既不是角色也不是雪花”。即使 role. name 在布尔循环函数中为真。我有 console.log,它是空的。我允许启用管理角色和发送消息。我就是不知道出了什么问题。
    【解决方案3】:

    对我来说(现在)这仅适用于:

    var role = message.member.roles.cache.find(role => role.name === "role name");
    if (!role) return;
    message.member.guild.roles.add(role);
    

    【讨论】:

      【解决方案4】:

      截至目前,2020 年,此代码运行良好,并且易于实施,因为它仅基于消息对象

      let role = message.member.guild.roles.cache.find(role => role.name === "your role");
      if (role) message.guild.members.cache.get(message.author.id).roles.add(role);
      

      【讨论】:

        猜你喜欢
        • 2022-01-18
        • 2021-08-25
        • 2019-12-11
        • 2020-10-12
        • 1970-01-01
        • 2021-05-29
        • 2021-01-28
        • 1970-01-01
        相关资源
        最近更新 更多