![](/img/trans.png)
[英]Node.js Discord.js UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'calculatedPosition' of undefined
[英]TypeError: Cannot read property 'first' of undefined Discord.js node.js v12.16.3
我正在編寫一個 discord 機器人,但我不知道如何處理 first()。 有人可以幫忙嗎。 踢.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);
'''
這是我的錯誤:
''' 類型錯誤:無法在客戶端讀取未定義的屬性“執行”。 (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)
在 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) '''
我正在編寫一個 discord 機器人,但我不知道如何處理 first()。 有人可以幫忙嗎。 踢.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);
'''
這是我的錯誤:
''' 類型錯誤:無法在客戶端讀取未定義的屬性“執行”。 (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)
在 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) '''
我正在編寫一個 discord 機器人,但我不知道如何處理 first()。 有人可以幫忙嗎。 踢.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);
'''
這是我的錯誤:
''' 類型錯誤:無法在客戶端讀取未定義的屬性“執行”。 (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)
在 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.