简体   繁体   English

使用 discord.js 以正确的格式查找公会的创建日期

[英]Finding the creation date of the guild in the correct format, using discord.js

I'm trying to make a serverinfo command, and I wanted to add Server CreationDate .我正在尝试创建一个serverinfo命令,并且我想添加Server CreationDate

This should give the Date , Time and How long ago .这应该给出DateTimeHow long ago

But the issue is when I use message.guild.createdAt the output looks like this:但问题是当我使用message.guild.createdAt时,output 看起来像这样:

Sat Sep 04 2021 09:44:44 GMT+0000 (Coordinated Universal Time)

It's too long AND it looks bad, I'm wondering if I can have the output look something like this?它太长而且看起来很糟糕,我想知道我是否可以让 output 看起来像这样?

09/04/2021 11:44 (3 months and 10 days ago)

Here is my code:这是我的代码:

const { MessageEmbed } = require('discord.js');

module.exports = {
    name: 'serverinfo',
    category: 'Info',
    description: 'Shows info about the server.',
    aliases: [],
    usage: 'Serverinfo',
    userperms: [],
    botperms: [],
    run: async (client, message, args) => {
  if(message.author.bot) return;

  let staffcount = message.guild.roles.cache.get(process.env.ROLE_STAFF).members.size;
  let botcount = message.guild.roles.cache.get(process.env.ROLE_BOT).members.size;
  let membercount = message.guild.memberCount - botcount
  let verifiedcount = message.guild.roles.cache.get(process.env.ROLE_MEMBER).members.size - staffcount

    const embed = new MessageEmbed()
      .setThumbnail(client.user.displayAvatarURL({ dynamic: true, size: 512 }))
      .setColor("BLUE")
      .setTitle(':desktop: SERVER INFORMATION :desktop:')
      .addField('Server Name', '```' + message.guild.name + '```',true)
      .addField('Server Owner', '```SirDevinci#1998```',true)
      .addField('Server Members ['+ membercount +']', '```' + verifiedcount + ' Verified Members | ' + staffcount + ' Staff Members```',false)
      .addField('Server Tier','```' + message.guild.premiumTier + '```',true)
      .addField('Server Boosts','```' + message.guild.premiumSubscriptionCount + '```',true)
      .addField('Server CreationDate','```' + message.guild.createdAt + '```',false)
      message.channel.send(embed);
  }
}

thanks.谢谢。

You can use moment.js to format your datetime:您可以使用moment.js来格式化您的日期时间:

 const moment = require('moment'); // and then use this to format time let createdAt = moment(message.guild.createdAt); let dateFormated = createdAt.format('DD/MM/YYYY')+'( '+ createdAt.fromNow() +' )'; // then use it on your output: .addField('Server CreationDate','```' + dateFormated + '```',false)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM