我的代码中有if (!message.guild.me.hasPermission("SEND_MESSAGES")) return;
,但是当我禁用漫游器的发送消息权限时,它给了我一个错误,(node:2504) UnhandledPromiseRejectionWarning: DiscordAPIError: Missing Permissions
。我该如何解决这个问题,以便当我的机器人无法将消息发送到聊天室时,我不会收到错误消息。
答案 0 :(得分:1)
在消息事件之前执行此操作
尝试一下:
if (message.author.bot) {
return;
} else {
//do soemthing if user is not a bot
}
答案 1 :(得分:1)
您可以使用try catch块来捕获异常,然后不打印错误。
like:
try{
if (!message.guild.me.hasPermission("SEND_MESSAGES")) return;
}catch{}
答案 2 :(得分:0)
这可能是因为所需的权限不是SEND_MESSAGES
。
例如,如果您正在编码ban
命令,则还需要检查该漫游器是否具有BAN_MEMBERS
权限。
如果它是add-role
命令,则必须检查bot最高角色是否高于它需要分配的角色。