Changing the time and date format for Discord bot
本问题已经有最佳答案,请猛点这里访问。
所以,标题简要解释了我的问题。 我正在为我的机器人创建一个踢功能,它一直运行良好。 我遇到的唯一问题(不是主要问题)是它向#incidents频道发送带有踢脚信息的嵌入部分,只有Bots和Staff才能访问。 我创建了一个新的Discord用户帐户,我已创建并将其加入服务器。 我测试了我的删除命令,它的工作原理和我的意图。
1 2 3 4 5 6 7 8 | var incidentembed = new discord.RichEmbed() .setTitle("User removed") .setDescription("**" + ruser +"** was successfully removed from the server.") /** ruser declares the user that was removed. **/ .setColor("#3937a5") .addField("Time assigned", message.createdAt, true) .addField("Assigned by", `<@${message.author.id}>`, true) .addField("Reason", rreason, false); /** rreason declares the reason that the staff member inputted. **/ bot.channels.get("466904829550264322").send(incidentembed); /** The ID points out the #incidents channel. **/ |
(是的,ClassyAss是我的Discord用户名。)
正如您在屏幕截图中所看到的,时间分配字段显然存在错误。 我正在使用message.createdAt生成此日期和时间,但是,它的格式是如何混乱和混乱。
我想根据澳大利亚东部标准时间(AEST)将时间和日期格式设置为DD / MM / YYYY HH:MM AM / PM。 我怎么能做到这一点?
当您使用嵌入时,您可以使用Discord显示时间和日期(它也会转换为用户的时间戳)。
1 2 3 4 5 6 7 8 | var incidentembed = new discord.RichEmbed() .setTitle("User removed") .setDescription("**" + ruser +"** was successfully removed from the server.") /** ruser declares the user that was removed. **/ .setColor("#3937a5") .setTimestamp(message.createdAt) .addField("Assigned by", `<@${message.author.id}>`, true) .addField("Reason", rreason, false); /** rreason declares the reason that the staff member inputted. **/ bot.channels.get("466904829550264322").send(incidentembed); /** The ID points out the #incidents channel. **/ |
或者,如果您仍想格式化日期,则可以执行此类操作。
1 2 3 4 5 6 7 | var d = new Date, dformat = [d.getMonth()+1, d.getDate(), d.getFullYear()].join('/')+' '+ [d.getHours(), d.getMinutes(), d.getSeconds()].join(':'); |
归功于KooiInc。