【问题标题】:(node:13848) UnhandledPromiseRejectionWarning: TypeError: message.member.roles.some is not a function(节点:13848)UnhandledPromiseRejectionWarning:TypeError:message.member.roles.some 不是函数
【发布时间】:2020-07-24 13:02:08
【问题描述】:

我正在尝试执行 kicka 命令,但由于此错误而无法正常工作,我得到“(node:13848) UnhandledPromiseRejectionWarning: TypeError: message.member.roles.some is not a function”

我的代码 `client.on('message', async message => { if (!message.content.startsWith(prefix) || message.author.bot) return;

const args = message.content.slice(prefix.length).split(/ +/);
const command = args.shift().toLowerCase();

if(command === "kick") {
    if(!message.member.roles.some(r=>["Administrator", "Moderator"].includes(r.name)) )
      return message.reply("Sorry, you don't have permissions to use this!");
    let member = message.mentions.members.first() || message.guild.members.get(args[0]);
    if(!member)
      return message.reply("Please mention a valid member of this server");
    if(!member.kickable) 
      return message.reply("I cannot kick this user! Do they have a higher role? Do I have kick permissions?");
    let reason = args.slice(1).join(' ');
    if(!reason) reason = "No reason provided";

    await member.kick(reason)
      .catch(error => message.reply(`Sorry ${message.author} I couldn't kick because of : ${error}`));
    message.reply(`${member.user.tag} has been kicked by ${message.author.tag} because: ${reason}`);

  }});`

【问题讨论】:

  • 我忘了告诉我在尝试执行 kick 命令时出错了!
  • 如果message.member.roles.some 不是函数,则表示message.member.roles 不是数组。检查它是什么,例如通过console.log,例如

标签: javascript discord.js


【解决方案1】:

如果您的 discord.js 版本为 12.0.0 或更高版本,则为 message.member.roles.cache.some()。这还包括其他更改,例如 message.guild.members.get(args[0]) 现在是 message.guild.members.cache.get(args[0])。这是因为新添加的经理。您可以阅读有关 v12 更改的更多信息 here。如果您未使用 v12,则代码中的 message.member.roles 很可能已被覆盖,不再是 Collection。

【讨论】:

    猜你喜欢
    • 2018-03-23
    • 2021-09-20
    • 2021-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 2021-09-19
    • 2016-12-10
    相关资源
    最近更新 更多