发出以编程方式向Discord成员添加角色的问题

时间:2020-10-04 03:13:23

标签: discord discord.js

尝试以编程方式向成员添加角色时遇到问题。 member.roles.add引发以下错误

(node:9420) UnhandledPromiseRejectionWarning: TypeError [INVALID_TYPE]: Supplied roles is not a Role, Snowflake or Array or Collection of Roles or Snowflakes.

我试图将角色的idname传递给add方法,但这也不起作用。我在这里做错了什么?任何朝着正确方向的指针将不胜感激。

下面是应用角色本身(在其上下文中)的功能,以更好地理解我的问题:

bot.on('message', msg=>{
    if(msg.content.match(/[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/)) {
        if((msg.content.match((new RegExp(/[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/, "g")) || []).length) >= 30) {
            msg.channel.send(`${"<@" + msg.author.id + ">"}. Your message has been deleted for containing too many special characters.`);
            
            const guild = bot.guilds.cache.get(GUILD_ID_HERE);
            let mute_role = msg.guild.roles.cache.find(role => role.name === 'spammer');
            var member = guild.members.cache.get(msg.author.id);

            member.roles.add(mute_role);
            msg.delete();
        }
    }
   ...

0 个答案:

没有答案