【发布时间】:2021-11-16 20:58:40
【问题描述】:
我试图在我的 Discord 机器人中发出命令来解除对某人的禁令。当我完成代码时,我得到了一个错误。错误是无法读取未定义的属性(读取“fetchBans”)。我用来制作它的代码是
message.guild.cache.fetchBans().then(async bans => {
if (bans.size === 0) return message.channel.send("No one is banned on the server!")
let bannedUser = bans.find(ban => ban.user.id == userID)
if (!bannedUser) return message.channel.send("This user isn't banned!")
await message.guild.members.unban(bannedUser.user, reason).catch(err => {
return message.channel.send("Something went wrong!")
}).then(() => {
let embed = new MessageEmbed()
.setColor("GREEN")
.setTitle(`Member unbanned!`)
.setDescription("")
.setTimestamp()
.setFooter(this.client.user.username)
embed.addField(`member = ${target.username}`, `reason = ${reason}`, false)
message.channel.send({embeds: [embed]});
if (row[0].logs_channel != null) this.client.channels.cache.get(row[0].logs_channel).send({embeds: [embed]})
message.delete()
})
出错的地方就是这一行:
message.guild.cache.fetchBans().then(async bans => {
当我运行这个命令时,它会给出错误。我也尝试做其他事情。我为该行尝试的代码是:
message.guild.fetchBans().then(async bans => {
这一行还给出了一个错误,上面写着:TypeError: message.guild.fetchBans is not a function。
我不知道我能做些什么。我希望有人可以帮助我。
Node.js 版本:16.9.1 discord.js 版本:13.1.0
【问题讨论】:
标签: javascript node.js discord discord.js