“ TypeError:person.removeRole不是函数”

问题描述 投票:0回答:3

我正在尝试为我的不和谐服务器创建一个定时静音机器人,但是它说“ Person.removeRole不是一个函数”有没有解决办法?

bot.on('message', message => {
  let args = message.content.substring(PREFIX.length).split(" ");

  switch (args[0]) {
    case 'mute':
      var person = message.guild.member(message.mentions.users.first() || message.guild.members.cache.get(args[1]));
      if (!person) return message.reply("I can't find the user noob ");

      let mainrole = message.guild.roles.cache.find(role => role.name === "Epic Members");
      let role = message.guild.roles.cache.find(role => role.name === "mute");


      if (!role) return message.reply(" can't find the mute role noob, Create a mute role named 'mute'.")


      let time = args[2];
      if (!time) {
        return message.reply("Put a dman time u noob");
      }

      person.removeRole(mainrole.id)
      person.addRole(role.id);


      message.channel.send(`@${person.user.tag} has now been muted for ${ms(ms(time))}`)

      setTimeout(function() {

        person.addRole(mainrole.id)
        person.removeRole(role.id);
        console.log(role.id)
        message.channel.send(`@${person.user.tag} has been unmuted noob`)
      }, ms(time));
      break;
  }
});
javascript discord.js
3个回答
0
投票

[.addRole().removeRole()方法仅存在于v11(GuildMember)中的docs类中:如果使用discord.js@v12,则需要使用GuildMember.roles属性:] >

GuildMember.roles    

0
投票

检查您是否使用discord.js V12并使用:


0
投票

请参阅此文档,该文档可以真正为您提供帮助:) Discord.js: Role Manager -> add

© www.soinside.com 2019 - 2024. All rights reserved.