Javascript Discord,给提到的用户一个角色

时间:2019-03-15 17:47:42

标签: javascript discord.js

我只是想问我如何添加赋予人角色的命令。这样您可以输入:“ addRole @ user#1234”,然后用户将获得该角色。

1 个答案:

答案 0 :(得分:0)

由于您未提供任何示例代码,因此我将向您展示这样做的方法。

首先,您必须获得两个变量,一个变量要提供的角色,另一个变量要提供的成员
您可以通过其ID获得角色(也可以使用名称,但要使用Collection#find
您可以使用Message#mentions

从邮件中的提及中获得成员
let role = message.guild.roles.get('roleIdBetweenQuotes');
let member = message.mentions.members.first();
// A message can have more than one mention, which results in giving us a collection of members.
// So we have to use first() to get the first member in that collection.

在获得两个变量之后,您将必须使用GuildMember#addRole函数将角色添加到成员

member.addRole(role)
  .then(memberAdded => { // Optional
    message.channel.send(`Added role ${role.name} to ${member.displayName}`);
  })
  .catch(error => {
    console.log(error);
  });

我们将角色添加到成员中。 GuildMember#addRole函数返回一个promise,因此要在其后发送消息,必须等到诺言得到解决后再发送确认消息。另外,如果诺言被拒绝,您也可以记录错误。