javascript - Discord.js 错误 = “消息未定义”
问题描述
const Discord = require('discord.js');
exports.run = async (bot, message, args) => {
let userInfMent = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0]))
message.channel.send(userInfo(userInfMent));
}
function userInfo(user) {
const Discord = require('discord.js');
let userInfMent = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0]))
var userCreated = userInfMent.createdAt.toString().split(' ');
var lastMsg = userInfMent.lastMessage.createdAt.toString().split(' ')
const userInfoEmbed = new Discord.RichEmbed()
.addField('Никнейм: ', userInfMent.username)
.addField('Тег: ', userInfMent.tag)
.addField('ID: ', userInfMent.id)
.addField('Аккаунт был создан: ', userCreated[1] + ', ' + userCreated[2] + ', ' + userCreated[3])
.addField('Последнее сообщение: ', userInfMent.lastMessage + ' в ' + lastMsg[1] + ', ' + lastMsg[2] + ', ' + lastMsg[3] + ', ' + lastMsg[4])
.addField('Статус: ', userInfMent.presence.status)
.setColor('RANDOM')
.setThumbnail(userInfMent.avatarURL);
return userInfoEmbed
}
你好。我是 Node.js 初学者。
当我启动命令时,在控制台中我看到错误:
(node:6312) UnhandledPromiseRejectionWarning: ReferenceError: message is not defined at userInfo (C:\Users\deris\Desktop\Проекты\Node.js\discord.js\JSBot-master\commands\userinfo.js:10:23) 在Object.exports.run (C:\Users\deris\Desktop\Проекты\Node.js\discord.js\JSBot-master\commands\userinfo.js:5:26)
解决方案
message
仅在消息事件本身中定义。因此,您可以简单地将message
对象作为参数传递给您的函数。
// new function
function userInfo(user, message) {
//code here
}
请记住,调用函数时必须添加附加参数。
message.channel.send(userInfo(userInfMent, message));
推荐阅读
- php - 如何使期权价值包含超过1个价值?
- java - Rest - 响应中的 MediaType 与请求中的相同
- javascript - 通过单击单词播放 mp3 文件
- php - 使用动态生成的索引和值归档或平衡数组
- javascript - 在js jquery中获取孩子的src
- python-3.x - Discord.py client.wait_for() 发送多条消息
- python - 如何在peewee Python中使用join从两个表中获取数据
- c# - 如何查找包含两个数字且它们之间有一个字符的字符串
- typescript - TypeScript:在保留类型信息的同时重新映射对象中的值
- typescript - 如何在通用地图上添加约束?