未捕获的承诺错误:TypeError:成员不是函数

时间:2019-06-18 02:42:27

标签: javascript node.js typeerror discord.js

使用我的验证机器人,该DM向用户DM,该用户以代码进行响应,并应该扮演一个角色。但是,它什么也不做,并发布此错误。

  

未捕获的承诺错误:
  TypeError:member不是函数

我尝试将users更改为members,反之亦然,而是在配置中定义了行会,角色等,但是没有一个能够解决错误。

client.on('message', async (message) => {
    if (message.author.bot || !message.author.token || message.channel.type !== `dm`) return
    if (message.content !== (verifymsg.replace('{token}', message.author.token))) return
    message.channel.send({
        embed: {
            color: Math.floor(Math.random() * (0xFFFFFF + 1)),
            description: completemsg,
            footer: {
                text: `Verification Success`
            }
        }
    })
  let member = message.mentions.users.first(); 
    member(message.member).addRole(member.guild("528721525390442526").roles.find("name", "Member"));
})

我希望将一个角色添加到成员,使他们能够访问公会。

1 个答案:

答案 0 :(得分:0)

您编写member(message.member)的方式是告诉JavaScript使用参数member()执行函数message.member。您尚未在代码中的任何地方定义该函数,所以这就是它引发错误的原因。

您要使用Guild.member() 方法

示例:

try {
  const guild = client.guilds.get('528721525390442526');
  const member = guild.member(message.author.id);
  const role = guild.roles.find(r => r.name === 'Member');

  member.addRole(role);
  member.send('Verification successful.');
} catch(err) {
  console.error(err);
}