【发布时间】:2018-02-21 14:03:30
【问题描述】:
免责声明:我对 javascript(和 angular)非常陌生。
我正在尝试让 momentjs 显示从现在到昨天的时间。 3天后,它将显示实际日期。
使用随机日期的示例(日期差异将始终为“今天”):
- 2017 年 10 月 10 日下午 6:41(未来)
- 明天下午 6:41
- 今天下午 6:41
- 昨天下午 6:41
- 2017 年 10 月 10 日下午 6:41
不确定我应该提供哪些其他信息,但请询问是否有帮助。
【问题讨论】:
-
您应该添加您已经尝试过的内容。但是,您可以检查日期是否是今天/昨天/明天,在这种情况下,只需执行 moment.format('string format')
-
@binariedMe 我试过搜索,但找不到任何想要做我正在做的事情的帖子。我目前正在使用标准格式
{{n.created_at | moment : 'format' : 'M/D/YY [at] h:mm a'}},它将日期显示为“10/10/17 下午 6:41”,但不显示“今天”等。 -
不,您必须检查给定的日期是否是今天/明天/昨天才能显示特定的字符串,并且在 moment.js 中根本不支持它。只需制作一个自定义管道并检查给定日期是否为 t/t/y
-
@binariedMe 为不受支持的功能创建自定义管道目前可能超出我的能力范围。不过,我感谢您的帮助。
-
您可以改为创建一个函数 getDisplayDate ,您可以从前端调用它而不是使用管道,所以像这样:{{getDisplayDate(n.created_at)}} 并通过进行一些检查来实现逻辑
标签: javascript angularjs momentjs