为什么我的函数没有赋予角色discord.js

时间:2020-11-02 20:14:27

标签: javascript discord.js

if (message.member.hasPermission('ADMINISTRATOR')) {
  let targetUser = message.mentions.members.first();
  targetUser.roles.add("772871120550363176");

  message.channel.send(targetUser + "is muted !unmute <@> to unmute the user!");
}

我不知道为什么这不起作用

1 个答案:

答案 0 :(得分:1)

我在服务器上运行您的代码,效果很好。因此,我建议您检查角色ID是否存在错误。如果有帮助,这是我运行的代码。

const Discord = require('discord.js');
const bot = new Discord.Client();
const token = 'your token here';
const PREFIX = '$';

bot.once('ready', () => {
    console.log('Bot is online!');
})

bot.on('message', message =>{
    if (!message.content.startsWith(PREFIX)||message.author.bot) return;

    const args = message.content.slice(PREFIX.length).split(/ +/);
    const command = args.shift().toLowerCase();

    if (command === 'welcome'){
        if (message.member.hasPermission('ADMINISTRATOR')) {
          let targetUser = message.mentions.members.first();
          targetUser.roles.add("role id");

          message.channel.send(targetUser + "is muted !unmute <@> to unmute the user!");
        }
    }
})

bot.login(token);

这是我运行的命令:

$welcome @user

这是我运行后的控制台:

C:\Users\Rak\Desktop\Bot>node .
Bot is online!
^C
C:\Users\Rak\Desktop\Bot>

这是漫游器的回复:

768442726483590155is muted !unmute <@> to unmute the user!

我的帐户获得了我想要的角色。