本文介绍了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)
        }   
    })

我需要改变什么?让它工作?

What do I need to change? for it to work?

错误是if (message.member.roles.some(role => role.name === 'Red')) return 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=> role.name === 'Red')

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

10-31 17:00