简体   繁体   中英

TypeError: Cannot read property 'first' of undefined Discord.js node.js v12.16.3

I'm coding a discord bot and I don't know what to do with first(). Could someone help. kick.js:

'''module.exports = {
name: 'kick',
category: 'moderation',
description: 'This will kick a user of your choice from the server',
async execute(msg, args) {
    const member = msg.mentions.user.first();
    if(member) {
        const memberTarget = message.guild.members.cache.get(member.id);
        memberTarget.kick();
        msg.channel.send("User has been kicked.")
    }else{
        msg.channel.reply('*You* *could* *not* *kick* *that* *user.*')
    }
  }
} 

'''

index.js:

  '''   
    const Discord = require('discord.js')
  const client = new Discord.Client();


  const guildId = '825243185588469820'

  const fs = require('fs');
  const {
    get
  } = require('http');

 client.commands = new Discord.Collection();
 const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));

for (file of commandFiles) {
const command = require(`./commands/${file}`);

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

   const config = require('./config.json');


   client.on('ready', () => {
      console.log(`Logged in as ${client.user.tag}!`);


     });

    client.on('message', msg => {
    if (!msg.content.startsWith(prefix) || msg.author.bot) return;
    const args = msg.content.slice(prefix.length).trim().split('/ +/ ');
    const command = args.shift();
    try {
    command.execute(msg, args);
    } catch (error) {
    //...
   } 

   try {
    client.commands.get(command).execute(msg, args);
  } catch (error) {
    console.error(error);
    msg.reply('*There* *was* *an* *error* *trying* *to* *execute* *that* *command!*');
  }



});


client.on('message', msg => {

if (msg.content == 'ping') {
    client.commands.get('ping').execute(msg, args);
} else if (msg.content == 'pong') {
    client.commands.get('pong').execute(msg, args);
} else if (msg.content == `beep`) {
    client.commands.get('beep').execute(msg, args);
} else if (msg.content == `boop`) {
    client.commands.get('boop').execute(msg, args);
} else if (msg.content == `server`) {
    client.commands.get('server').execute(msg, args);
} else if (msg.content == `user-info`) {
    msg.channel.send(`Your username: ${msg.author.username}\nYour ID: ${msg.author.id}`);
} else if (msg.content == `ban`) {
    client.commands.get('ban').execute(msg, args);
} else if (msg.content == `kick`) {
    client.commands.get('kick').execute(msg, args);
}else if (msg.content == `twitch`) {
    client.commands.get('twitch').execute(msg, args);
}

});



   const {
    prefix,
    token
 } = require('./config.json');
  //...

 client.login(config.token);

'''

and heres my error:

''' TypeError: Cannot read property 'execute' of undefined at Client. (C:\Users\willi\Desktop\spagehtt\index.js:41:31) at Client.emit (events.js:322:22) at MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14) at Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32) at WebSocketManager.handlePacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketManager.js:384:31)
at WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) at WebSocketShard.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) at WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js:132:16) at WebSocket.emit (events.js:310:20) at Receiver.receiverOnMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\websocket.js:835:20) '''

I'm coding a discord bot and I don't know what to do with first(). Could someone help. kick.js:

'''module.exports = {
name: 'kick',
category: 'moderation',
description: 'This will kick a user of your choice from the server',
async execute(msg, args) {
    const member = msg.mentions.user.first();
    if(member) {
        const memberTarget = message.guild.members.cache.get(member.id);
        memberTarget.kick();
        msg.channel.send("User has been kicked.")
    }else{
        msg.channel.reply('*You* *could* *not* *kick* *that* *user.*')
    }
  }
} 

'''

index.js:

  '''   
    const Discord = require('discord.js')
  const client = new Discord.Client();


  const guildId = '825243185588469820'

  const fs = require('fs');
  const {
    get
  } = require('http');

 client.commands = new Discord.Collection();
 const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));

for (file of commandFiles) {
const command = require(`./commands/${file}`);

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

   const config = require('./config.json');


   client.on('ready', () => {
      console.log(`Logged in as ${client.user.tag}!`);


     });

    client.on('message', msg => {
    if (!msg.content.startsWith(prefix) || msg.author.bot) return;
    const args = msg.content.slice(prefix.length).trim().split('/ +/ ');
    const command = args.shift();
    try {
    command.execute(msg, args);
    } catch (error) {
    //...
   } 

   try {
    client.commands.get(command).execute(msg, args);
  } catch (error) {
    console.error(error);
    msg.reply('*There* *was* *an* *error* *trying* *to* *execute* *that* *command!*');
  }



});


client.on('message', msg => {

if (msg.content == 'ping') {
    client.commands.get('ping').execute(msg, args);
} else if (msg.content == 'pong') {
    client.commands.get('pong').execute(msg, args);
} else if (msg.content == `beep`) {
    client.commands.get('beep').execute(msg, args);
} else if (msg.content == `boop`) {
    client.commands.get('boop').execute(msg, args);
} else if (msg.content == `server`) {
    client.commands.get('server').execute(msg, args);
} else if (msg.content == `user-info`) {
    msg.channel.send(`Your username: ${msg.author.username}\nYour ID: ${msg.author.id}`);
} else if (msg.content == `ban`) {
    client.commands.get('ban').execute(msg, args);
} else if (msg.content == `kick`) {
    client.commands.get('kick').execute(msg, args);
}else if (msg.content == `twitch`) {
    client.commands.get('twitch').execute(msg, args);
}

});



   const {
    prefix,
    token
 } = require('./config.json');
  //...

 client.login(config.token);

'''

and heres my error:

''' TypeError: Cannot read property 'execute' of undefined at Client. (C:\Users\willi\Desktop\spagehtt\index.js:41:31) at Client.emit (events.js:322:22) at MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14) at Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32) at WebSocketManager.handlePacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketManager.js:384:31)
at WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) at WebSocketShard.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) at WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js:132:16) at WebSocket.emit (events.js:310:20) at Receiver.receiverOnMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\websocket.js:835:20) '''

I'm coding a discord bot and I don't know what to do with first(). Could someone help. kick.js:

'''module.exports = {
name: 'kick',
category: 'moderation',
description: 'This will kick a user of your choice from the server',
async execute(msg, args) {
    const member = msg.mentions.user.first();
    if(member) {
        const memberTarget = message.guild.members.cache.get(member.id);
        memberTarget.kick();
        msg.channel.send("User has been kicked.")
    }else{
        msg.channel.reply('*You* *could* *not* *kick* *that* *user.*')
    }
  }
} 

'''

index.js:

  '''   
    const Discord = require('discord.js')
  const client = new Discord.Client();


  const guildId = '825243185588469820'

  const fs = require('fs');
  const {
    get
  } = require('http');

 client.commands = new Discord.Collection();
 const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));

for (file of commandFiles) {
const command = require(`./commands/${file}`);

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

   const config = require('./config.json');


   client.on('ready', () => {
      console.log(`Logged in as ${client.user.tag}!`);


     });

    client.on('message', msg => {
    if (!msg.content.startsWith(prefix) || msg.author.bot) return;
    const args = msg.content.slice(prefix.length).trim().split('/ +/ ');
    const command = args.shift();
    try {
    command.execute(msg, args);
    } catch (error) {
    //...
   } 

   try {
    client.commands.get(command).execute(msg, args);
  } catch (error) {
    console.error(error);
    msg.reply('*There* *was* *an* *error* *trying* *to* *execute* *that* *command!*');
  }



});


client.on('message', msg => {

if (msg.content == 'ping') {
    client.commands.get('ping').execute(msg, args);
} else if (msg.content == 'pong') {
    client.commands.get('pong').execute(msg, args);
} else if (msg.content == `beep`) {
    client.commands.get('beep').execute(msg, args);
} else if (msg.content == `boop`) {
    client.commands.get('boop').execute(msg, args);
} else if (msg.content == `server`) {
    client.commands.get('server').execute(msg, args);
} else if (msg.content == `user-info`) {
    msg.channel.send(`Your username: ${msg.author.username}\nYour ID: ${msg.author.id}`);
} else if (msg.content == `ban`) {
    client.commands.get('ban').execute(msg, args);
} else if (msg.content == `kick`) {
    client.commands.get('kick').execute(msg, args);
}else if (msg.content == `twitch`) {
    client.commands.get('twitch').execute(msg, args);
}

});



   const {
    prefix,
    token
 } = require('./config.json');
  //...

 client.login(config.token);

'''

and heres my error:

''' TypeError: Cannot read property 'execute' of undefined at Client. (C:\Users\willi\Desktop\spagehtt\index.js:41:31) at Client.emit (events.js:322:22) at MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14) at Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32) at WebSocketManager.handlePacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketManager.js:384:31)
at WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) at WebSocketShard.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) at WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js:132:16) at WebSocket.emit (events.js:310:20) at Receiver.receiverOnMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\websocket.js:835:20) '''

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM