Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我需要我的机器人忽略具有特定角色的用户发送的消息_Javascript_Node.js_Discord_Discord.js - Fatal编程技术网

Javascript 我需要我的机器人忽略具有特定角色的用户发送的消息

Javascript 我需要我的机器人忽略具有特定角色的用户发送的消息,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,我的机器人需要忽略具有特定角色的人发布的帖子 我已经编写了这段代码,它应该可以工作,但这段代码下的每个命令都不工作 我没有收到任何错误消息,并且我的bot在这段代码上面运行良好。 我需要改变什么 client.on('message',message=>{ if(message.guild.roles.cache.find(r=>r.name==“角色名”){return;} }) 非常感谢您的帮助。您正在检查是否有命名的角色名称,而不是实际名称 具有名为的属性,该属性包含的所有角色 clie

我的机器人需要忽略具有特定角色的人发布的帖子

我已经编写了这段代码,它应该可以工作,但这段代码下的每个命令都不工作

我没有收到任何错误消息,并且我的bot在这段代码上面运行良好。 我需要改变什么

client.on('message',message=>{
if(message.guild.roles.cache.find(r=>r.name==“角色名”){return;}
})
非常感谢您的帮助。

您正在检查是否有命名的
角色名称,而不是实际名称

具有名为的属性,该属性包含的所有角色

client.on(“message”,message=>{
if(message.member.roles.cache.find(role=>role.name==“role name”))返回false;
//在这里执行您的命令。
});

您应该检查是否有,而不是

client.on(“message”,message=>{
if(message.member.roles.cache.some(role=>role.name==“role name”))返回;
//代码。。。
});

您可以使用该方法,该方法将检查()中的任何项是否通过您给出的测试。在这种情况下,测试是如果角色名等于
角色名

,我不知道我做错了什么,但当我将代码更改为该名称时,我开始得到错误类型error:Cannot read属性“roles”的null命令必须在服务器中执行,不在DMs中。bot是在服务器中执行的,我不确定是什么导致了问题。我正在v12.3.1上运行bot,如果该帮助可以提供您的全部代码吗?我不确定是什么导致了这个问题。