如何通过用户ID赋予用户角色?
我想在命令中输入用户ID。 例如:
$ add用户ID
我尝试了很多,但是我不知道该怎么做
我的脚本(不起作用):
const discord = require('discord.js');
const client = new discord.Client;
const prefix = "$";
client.on('message', function(message) {
if (!message.content.startsWith(prefix)) {return}
const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();
if(command === 'add') {
let member = guild.client.id();
if (member) {
var role= member.guild.roles.cache.find(role => role.name === "newrole");
member.addRole(role);
}
}
})
client.login('token');
答案 0 :(得分:0)
定义用户可能对您有用
let user = message.mentions.users.first();
相反,member.addRole(role);
尝试使用user.id.addRole(role);
不确定是否适合您
答案 1 :(得分:0)
您的某些代码并没有多大意义,因此我对其进行了修复,并获得了一个可以满足您所需的版本。
const discord = require('discord.js');
const client = new discord.Client;
const prefix = "$";
client.on('message', function(message) {
if (!message.content.startsWith(prefix)) return
const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args[0].toLowerCase();
if(command === 'add') {
let member = message.member.guild.member(args[1])
if (member) {
var role = message.member.guild.roles.cache.find(role => role.name === "newrole");
message.guild.member(args[1]).roles.add(role)
}
}
})
client.login('token');