【问题标题】:Discord js v12: Cannot read property 'add' of undefined [duplicate]Discord js v12:无法读取未定义的属性“添加”[重复]
【发布时间】:2021-03-04 22:36:48
【问题描述】:

不知道为什么它不起作用,有人可以帮助我吗?我绝望了。

bot.on("message", (message) => {
    var roles = message.author.roles
    let roleID = '1234567890';
    if (message.author.bot) return; 
    if(message.content.startsWith(prefix + 'ttt')) {
        roles.add(roleID);          
    }
});

The Error is the same like in the title.
        roles.add(roleID);
              ^

TypeError: Cannot read property 'add' of undefined  

【问题讨论】:

  • 我明白了!谢谢!
  • 您好酋长国,请告诉我们您是如何解决问题的。您的解决方案可以帮助具有相同行为的其他人。

标签: javascript node.js discord discord.js


【解决方案1】:

message.author 中没有属性 roles。您可能想查看具有该属性的 message.member。

相关链接:

【讨论】:

    【解决方案2】:

    如果你想将角色添加给使用它的人,你应该得到消息成员并给予它。

    bot.on("message", (message) => {
        var roles = message.author.roles
        let roleID = '779756792737300490';
        if (message.author.bot) return; 
        if(message.content.startsWith(prefix + 'ttt')) {
            message.member.roles.add(roleID);          
        }
    });
    

    我刚改了第 6 行。

    您也不能将角色授予用户。您只能将其提供给会员。

    您也可以查看文档:

    【讨论】:

      【解决方案3】:

      这将起作用:

      bot.on("message", (message) => {
          var guildMember = message.member
          let roleID = '779756792737300490';
          let roleNAME = 'TestRole';
          let userID = message.author.tag + " " + (message.author.id);
          if (message.author.bot) return; 
          if(message.content.startsWith(prefix + 'ttt')) {
              guildMember.roles.add(roleID); 
              console.log(`Give "${roleNAME}" to User "${userID}" `)    
          }
          if(message.content.startsWith(prefix + "zzz")) {
              guildMember.roles.remove(roleID);
              console.log(`Removed "${roleNAME}" from User "${userID}"`)
          }
      });
      

      我还在里面放了一个console.log代码,这样你就可以看到有人删除了一个角色还是给了一个角色,如果你删除了2行代码,它也可以工作;)

      【讨论】:

        猜你喜欢
        • 2021-09-26
        • 2021-03-29
        • 1970-01-01
        • 2021-01-19
        • 2020-10-15
        • 2021-10-23
        • 2021-04-01
        • 2020-12-29
        • 2020-08-16
        相关资源
        最近更新 更多