[英]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().我正在编写一个 discord 机器人,但我不知道如何处理 first()。 Could someone help.
有人可以帮忙吗。 kick.js:
踢.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: 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)
(C:\Users\willi\Desktop\spagehtt\index.js:41:31) 在 Client.emit (events.js:322:22) 在 MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules \discord.js\src\client\actions\MessageCreate.js:31:14) 在 Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client \websocket\handlers\MESSAGE_CREATE.js:4:32) 在 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) '''在 WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) 在 WebSocketShard.onMessage (C:\Users\willi\Desktop\ spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) 在 WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js: 132:16) 在 WebSocket.emit (events.js:310:20) 在 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().我正在编写一个 discord 机器人,但我不知道如何处理 first()。 Could someone help.
有人可以帮忙吗。 kick.js:
踢.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: 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)
(C:\Users\willi\Desktop\spagehtt\index.js:41:31) 在 Client.emit (events.js:322:22) 在 MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules \discord.js\src\client\actions\MessageCreate.js:31:14) 在 Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client \websocket\handlers\MESSAGE_CREATE.js:4:32) 在 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) '''在 WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) 在 WebSocketShard.onMessage (C:\Users\willi\Desktop\ spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) 在 WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js: 132:16) 在 WebSocket.emit (events.js:310:20) 在 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().我正在编写一个 discord 机器人,但我不知道如何处理 first()。 Could someone help.
有人可以帮忙吗。 kick.js:
踢.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: 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)
(C:\Users\willi\Desktop\spagehtt\index.js:41:31) 在 Client.emit (events.js:322:22) 在 MessageCreateAction.handle (C:\Users\willi\Desktop\spagehtt\node_modules \discord.js\src\client\actions\MessageCreate.js:31:14) 在 Object.module.exports [as MESSAGE_CREATE] (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client \websocket\handlers\MESSAGE_CREATE.js:4:32) 在 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) '''在 WebSocketShard.onPacket (C:\Users\willi\Desktop\spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) 在 WebSocketShard.onMessage (C:\Users\willi\Desktop\ spagehtt\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) 在 WebSocket.onMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\event-target.js: 132:16) 在 WebSocket.emit (events.js:310:20) 在 Receiver.receiverOnMessage (C:\Users\willi\Desktop\spagehtt\node_modules\ws\lib\websocket.js:835:20) '''
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.