本文介绍了TypeError:message.member.roles.some不是函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

    if (message.content.startsWith(`${prefix2}red`)){
    if (message.member.roles.some(role => role.name === 'Red')) return message.channel.send(`You already has that role `)
    let role = message.guild.roles.find(r => r.name === "Red");
    let member = message.member; 
    message.delete(1)
    member.addRole(role).catch(console.error)
        }   
    })

我需要更改什么?

错误是
if(message.member.roles.some(role => role.name ==='红色'))返回message.channel.send(`您已经具有该角色`)
TypeError:message.member.roles.some不是函数

推荐答案

我假设您使用的是discord.js v12,因此您的代码无法正常工作。

I am assuming you are using discord.js v12 and that's why your code won't work.

尝试使用 message.member.roles.cache.some(role => role.name ==='Red')而不是 message.member.roles.some(角色=> role.name ==='红色')

这篇关于TypeError:message.member.roles.some不是函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-31 17:00