如何获得 mysql 提供的日期"time ago"?



我搜索了一些流行的时间解析和格式化库(如Day.jsdate-fns(的文档,但我并没有真正得到它

我的Node.js后端查询MySQL数据库中创建记录的日期时间,并将其发送到前端(im使用React(。在前端,我想找到数据库中的日期(看起来像2020-12-04T15:39:40.000Z,已经从json解析为javscript对象(和当前日期时间之间的时间差
例如,社交媒体网站有类似";postet 2天前">
我见过不使用库的解决方案,只使用普通的javascript,但它们似乎很长,我并没有真正理解它们。我想使用一个库来简化这一点。你认为什么是最好的方法?

date-fns有一个内置的本地化函数,可以输出这样的字符串:

https://date-fns.org/v2.16.1/docs/formatDistance

所以你可以使用:

formatDistance(
new Date('2020-12-04T15:39:40.000Z'),
new Date(),
{ addSuffix: true }
) 

您可以使用Moment.js库的diff方法。你的代码可能是这样的:

diffDays = currentDate.diff(databaseDate, "days");
diffString = `posted ${diffDays} days ago`;

最新更新