我正在尝试创建自己的 discord 机器人并现在创建一个 unban 命令.我的代码如下.我禁止了一个朋友并尝试通过输入 -unban 271375814384287744 testing
来解禁.然后它给我一个错误说 Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban.
任何帮助将不胜感激.
I am trying to create my own discord bot and creating an unban command now. My code is below. I banned a friend and tried to unban by typing -unban 271375814384287744 testing
. It then gives me an error saying Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban.
Any help would be appreciated.
const Discord = require('discord.js');
const client = new Discord.Client();
const embed = new Discord.MessageEmbed()
.setColor('#39de33')
module.exports = {
name: 'unban',
description: "This unbans a user",
execute(message, args){
if (message.member.permissions.has("BAN_MEMBERS")){
if (!isNaN(args[0])) {
const bannedMember = client.users.fetch(args[0]);
var reason = args.slice(1).join(" ");
if(!reason) {
reason = "No reason given!"
}
if (bannedMember) {
bannedMember
message.guild.members.unban(bannedMember, reason)
.then(() => {
embed.setDescription(`Successfully unbanned **${user.tag}**`);
message.channel.send(embed);
})
.catch(err => {
embed.setDescription('I was unable to unban the member');
message.channel.send(embed);
console.error(err);
});
} else {
embed.setDescription("That user isn't in this guild!");
message.channel.send(embed);
}
} else {
embed.setDescription("You need to provide an user ID to unban");
message.channel.send(embed);
}
} else {
embed.setDescription("You do not have `BAN_MEMBERS` permissions to unban this member");
message.channel.send(embed);
}
}
}
我试过了,也遇到了同样的错误.
I tried this out and got the same error.
Promise {
<rejected> Error [BAN_RESOLVE_ID]: Couldn't resolve the user ID to unban.
at GuildMemberManager.unban (/home/kayuimineko/Arc-Neko/node_modules/discord.js/src/managers/GuildMemberManager.js:240:36)
at eval (eval at <anonymous> (/home/kayuimineko/Arc-Neko/cmdhandler/eval.js:49:26), <anonymous>:1:23)
at /home/kayuimineko/Arc-Neko/cmdhandler/eval.js:49:26
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4838:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4838:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/helpers/promiseOrCallback.js:24:16
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/model.js:4861:21
at /home/kayuimineko/Arc-Neko/node_modules/mongoose/lib/query.js:4407:11
at /home/kayuimineko/Arc-Neko/node_modules/kareem/index.js:135:16
at processTicksAndRejections (internal/process/task_queues.js:79:11) {
[Symbol(code)]: 'BAN_RESOLVE_ID'
}
}
运行时
message.guild.members.unban(client.users.fetch(config.admin.owner.id), "reason")
// Ignore the config part it's fine
<小时>事实证明,您应该只通过他们的 ID 而不是他们的用户属性来解禁这些人.因此,要取消禁止被禁止的成员,请改用以下代码:
const Discord = require('discord.js');
const client = new Discord.Client();
const embed = new Discord.MessageEmbed()
.setColor('#39de33')
module.exports = {
name: 'unban',
description: "This unbans a user",
execute(message, args){
if (message.member.permissions.has("BAN_MEMBERS")){
if (!isNaN(args[0])) {
const bannedMember = message.guild.members.cache.get(args[0]) // Get the `member` property instead to recall later.
var reason = args.slice(1).join(" ");
if(!reason) {
reason = "No reason given!"
}
if (bannedMember) {
bannedMember
message.guild.members.unban(bannedMember.id, reason)
.then(() => {
embed.setDescription(`Successfully unbanned **${bannedMember.user.tag}**`); // `user` is undefined.
message.channel.send(embed);
})
.catch(err => {
embed.setDescription('I was unable to unban the member');
message.channel.send(embed);
console.error(err);
});
} else {
embed.setDescription("That user isn't in this guild!");
message.channel.send(embed);
}
} else {
embed.setDescription("You need to provide an user ID to unban");
message.channel.send(embed);
}
} else {
embed.setDescription("You do not have `BAN_MEMBERS` permissions to unban this member");
message.channel.send(embed);
}
}
}
这篇关于错误 [BAN_RESOLVE_ID]:无法将用户 ID 解析为解禁的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!