我正在尝试制作一个命令,它将检查提到的用户并将其保存到数组中,以便我可以在其上使用方法等。
例如,给某人一个角色。
将消息中提到的用户(message.mentions.users
(保存到数组
中为提到的用户指定角色(或其他方法(
检查提到的用户并将其保存到数组中
那不是必需的。 message.mentions.users
已经是一个数组,如果需要,您仍然可以通过创建另一个变量来保存它,但是要给它们一个角色,您只需为每个变量执行一个命令。
为此,我们将使用 .forEach()
方法:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
console.log(user); // This should log every mentioned user
});
通过这种方式,您可以轻松地为每个命令执行命令。
但是要给他们一个角色,你必须使用后端API(HTTP请求(。
PUT/DELETE/api/guilds/{guildId}/members/{userId}/roles/{roleId} [1]
HTTP 请求可以使用 jQuery 的 ajax 完成:(记住所有不和谐请求 基本网址应 https://discordapp.com/api(:
$.ajax({
url: '/api/guilds/{guildId}/members/{userId}/roles/{roleId}',
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
}
});
您只需要将message.mentions.users
转换为其 ID,您可以使用 .forEach()
循环轻松完成此操作。
更新
例:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
$.ajax({
url: '/api/guilds/' + message.guild.id + '/members/' + user + '/roles/{roleId}', // In this case the ID of the role
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
};
});
});