【问题标题】:How to remove all roles from a member apart from one discord.js v12?除了一个 discord.js v12 之外,如何从成员中删除所有角色?
【发布时间】:2021-02-14 08:40:19
【问题描述】:

我希望有一个命令可以从成员中删除除一个特定角色之外的所有角色。现在,我已经做到了,它会删除所有角色,然后添加我想要延迟保留的角色,但如果有人有很多角色,它也会删除我想要保留的角色。我的代码:

member.roles.remove(member.roles.cache).catch(error => {
  message.reply(`failed to remove roles of <@${member.id}>, try moving at least one of my roles above all of the other ones`)
  return
});

antagReason.split('')

setTimeout(() => {
  member.roles.add(antagonistRoleID)
  .then(memberAdded => {
    message.reply(`you have succesfully antagonized <@${member.id}> with the reason **${antagReason}** <:AliasAntag:757173746925830165>`);
  })
  .catch(error => {
    console.log(error);
  });
}, 200);

有没有办法删除除一个角色之外的所有角色?提前致谢。

【问题讨论】:

    标签: node.js discord.js


    【解决方案1】:

    不要删除每个角色然后再添加一个,只需使用GuildMemberRoleManager.set()

    member.roles
     .set([antagonistRoleID])
     .then((memberAdded) => {
      message.reply(
       `you have succesfully antagonized <@${member.id}> with the reason **${antagReason}** <:AliasAntag:757173746925830165>`
      );
     })
     .catch((error) => {
      console.log(error);
     });
    

    【讨论】:

      猜你喜欢
      • 2020-12-27
      • 2021-11-03
      • 2020-11-03
      • 1970-01-01
      • 1970-01-01
      • 2020-10-20
      • 2021-10-08
      • 1970-01-01
      • 2021-04-25
      相关资源
      最近更新 更多