Discord Bot运行userinfo命令报错moment is not defined如何解决
故障原因
你已经完成了moment依赖的安装,但当前userinfo.js文件中并没有引入moment模块,导致代码调用moment()方法时无法识别对应对象,抛出未定义错误。
修复方案
在userinfo.js文件的首行区域,添加moment模块的引入语句即可:
const moment = require('moment');
修改后完整代码
const { MessageEmbed } = require('discord.js'); const moment = require('moment'); module.exports = { name: "userinfo", aliases: ['ui'], description: "Shows account stats", execute(message, args, commandName, client, Discord) { const Target = message.mentions.users.first() || message.author; const Member = message.guild.members.cache.get(Target.id); const Response = new MessageEmbed() .setAuthor(`${Target.username}`, Target.displayAvatarURL({dynamic: true})) .setThumbnail(Target.displayAvatarURL({dynamic: true})) .setColor('NOT_QUITE_BLACK') .addField("User ID", `${Target.id}`, false) .addField("Roles", `${Member.roles.cache.map(r => r).join(' ').replace("@everyone", " ")}`) .addField("Server member since", `${moment(Member.joinedAt).format('MMMM Do YYYY, h:mm:ss a')}\n**-** ${moment(Member.joinedAt).startOf('day').fromNow()}`) .addField("Discord member since", `${moment(Member.createdAt).format('MMMM Do YYYY, h:mm:ss a')}\n**-** ${moment(Member.createdAt).startOf('day').fromNow()}`) message.reply({embeds: [Response]}); } }
内容的提问来源于stack exchange,提问作者NexusDevAndStuff
相关产品推荐
相关产品推荐

