【问题标题】:Discord.js TypeError: member.kick is not a functionDiscord.js TypeError:member.kick 不是函数
【发布时间】:2021-01-27 07:18:34
【问题描述】:

标题说明了一切...我的 kick 命令有问题。我不知道为什么。从来没有见过这样的事情。我试过重新安装Discord.js,但没有运气。

代码:

const {
    MessageEmbed
} = require('discord.js');

module.exports = {
    name: "kick",
    aliases: [],
    run: async (message, args, client) => {



        if (!message.member.hasPermission('KICK_MEMBERS')) {
            message.channel.send("You don't have permission to use that command.");

          } else {
        
            let member = message.mentions.users.first() || client.users.cache.get(args[0]);

       
                } else {
                    await member.kick();
                    console.log(`${message.author.username} kicked ${member} from ${message.guild.name} for ${reason}. Rest In Peace...`);
                    const embed = new MessageEmbed()
                       // kick successful embed
                    });
                }

            }

        }
    }
}

其余的都是错误嵌入。

【问题讨论】:

标签: discord discord.js


【解决方案1】:

您在错误的对象上调用kick()。您需要先从公会中获得成员。从 Discord.js 文档中它应该是:

 // this returns the user mentioned in the message
 let member = message.mentions.users.first() || client.users.cache.get(args[0]);
 if (member) {
   // this gets the member from the user
   const user = message.guild.member(member);
   if (user) {
     user.kick('user was being bad')
       .then(() => { message.reply('Successfully kicked.' })
       .catch(err => { // handle error });
   }
 }

注意:我使用了您在 sn-p 中的变量名,但我建议翻转 memberuser。以下是文档中的示例:https://discord.js.org/#/docs/main/stable/examples/moderation

【讨论】:

    猜你喜欢
    • 2020-12-31
    • 2020-12-07
    • 2020-08-23
    • 2020-01-22
    • 2020-11-13
    • 2017-11-28
    • 2021-06-15
    • 2020-12-22
    • 2021-06-17
    相关资源
    最近更新 更多