Discord.js“TypeError:无法读取未定义的属性‘has’”

时间:2021-05-05 12:30:55

标签: javascript discord.js

我正在做一个不和谐的机器人,我试图执行踢命令,但每次执行命令时,终端都会显示“TypeError:无法读取未定义的属性'has'”

踢腿脚本:

module.exports = {
    name: 'kick',
    description: "This command kicks a member",
    execute(message, args){
        if(message.member.permission.has("KICK_MEMBERS")){
            const member = message.mentions.users.first();
            if(member){
                const memberTarger = message.guild.members.cache.get(member.id);
                memberTarger.kick();
                message.channel.send('User has been kicked');
            }else{
                message.channel.send('You couldnt kick this member');
            }
        }
    }
}

主脚本:

const discord = require('discord.js');
const client = new discord.Client();
const prefix = '$';
const fs = require('fs');

client.commands = new discord.Collection();

const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
for(const file of commandFiles){
    const command = require(`./commands/${file}`)

    client.commands.set(command.name, command);
}

client.once('ready', () => {
    console.log('Bot is ready');
});

client.on('message', 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 === 'ping'){
        client.commands.get('ping').execute(message, args);
    } else if (command === 'clear'){
        client.commands.get('clear').execute(message, args);
    } else if (command === 'kick'){
        client.commands.get('kick').execute(message, args);
    }
});

1 个答案:

答案 0 :(得分:-1)

根据 documentation 是:member.hasPermission('KICK_MEMBERS')

相关问题