Javascript Discord.j:无法读取属性';获得许可';空的

Javascript Discord.j:无法读取属性';获得许可';空的,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,在我解释这个问题之前,我想说的是,我曾尝试研究过其他类似于此的堆栈溢出问题,但所有这些问题似乎都有我尝试过但没有奏效的解决方案。另外,对于JavaScript,我不是最有经验的,所以如果这只是一个简单的错误,我很抱歉,我太愚蠢了,没有注意到 现在,我们来谈谈这个问题: 我有一段代码: client.on('message', function(message) { if (message.member.hasPermission('BAN_MEMBERS')) {

在我解释这个问题之前,我想说的是,我曾尝试研究过其他类似于此的堆栈溢出问题,但所有这些问题似乎都有我尝试过但没有奏效的解决方案。另外,对于JavaScript,我不是最有经验的,所以如果这只是一个简单的错误,我很抱歉,我太愚蠢了,没有注意到

现在,我们来谈谈这个问题:

我有一段代码:

client.on('message', function(message)
{
    if (message.member.hasPermission('BAN_MEMBERS'))
    {
        return
    }

    // deal with message
})
我一直在犯这样的错误:

TypeError:无法读取null的属性“hasPermission”

事实上,我确实意识到message.member很可能是空的,我只是不知道如何以及为什么

正如上面提到的,我尝试了很多解决方案,但都没有成功。另一件有趣的事情是,整个机器人大约在2-3个月前工作,然后突然停止正常工作。(是的,我使用的是discord.js的最新版本)


谢谢

我相信您处理信息的方式是导致错误的原因。下面是一个非常简单的方法,这意味着在代码完成之前不会阻塞代码。这是类似的,应该有助于解决这个问题

client.on(“消息”,异步消息=>{
if(message.member.hasPermission(“禁止成员”){
返回;
}
});

您是否尝试使用
console.log
查看导致错误的消息类型?可能有一种特定类型的消息没有成员。