格式化日期以仅显示最小的最小相对时间段,即50s,1m,2h,3d等

skay-

我试图显示基于unix时间戳的最小最小时间段。

例子:

  1. “ 50秒前”必须为50秒。
  2. “ 65秒前”需要为1m,因为它的60秒以分钟为单位。
  3. “ 65分钟前”需要为1小时,因为其60分钟以分钟为单位。
  4. “ 25小时前” => 1d。
  5. “ 8天前” => 1w。
  6. ... 1mon(持续数月)。
  7. ... 2y(多年)。

我已经尝试了一些像矩的图书馆,

moment.unix(1440187622).fromNow()

但这会返回一个“句子”,但这并不是我想要的。

有任何想法吗?

克里斯汀·佐塞尔

您是否了解了moment.js的持续时间您可以编写这样的函数:

function segment(duration) {
  return duration.years() > 0 ? duration.years() + 'y' :
    duration.months() > 0 ? duration.months() + 'mon' :
    // ...
    duration.seconds() > 0 ? duration.seconds() + 's' : '';
}
segment(moment.duration(moment.diff(moment(),moment.unix(1440187622))))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章