在我的项目中使用时刻js进行日期转换,使用角度Js 2的框架。这里使用 amTimeAgo 管道将时间戳转换为日期并且它正常工作(例如,10秒前, 1天前和5天ego等...)。在这里,我的要求是,如果当前日期大于帖子的3天,我需要显示日期,如(7-04-2017)而不是(4天前)。这样做的最佳方式是什么?
<span>{{ideaListObj.cDate | amTimeAgo:true }} </span>
答案 0 :(得分:0)
ng2时刻使用momentjs来显示相对时间,因此您可以使用relativeTime
自定义amTimeAgo
输出。
在您的情况下,您可以在配置阶段使用以下代码:
moment.updateLocale('en', {
relativeTime : {
future: function (number, withoutSuffix, key, isFuture){
if( moment(number, 'D-MM-YYYY', true).isValid() ){
return number;
}
return "in " + number;
},
past: function (number, withoutSuffix, key, isFuture){
if( moment(number, 'D-MM-YYYY', true).isValid() ){
return number;
}
return number + " ago";
},
dd: function (number, withoutSuffix, key, isFuture){
if( number >= 3 ){
return moment().subtract(number, 'd').format('D-MM-YYYY');
}
return "%d days";
}
}
});