关于角度矩moment.js的格式消息

时间:2014-05-15 14:32:34

标签: angularjs angularjs-directive momentjs

如何使用angular-moment更改以前的消息。我使用这个angular-moment库来显示时间消息。

 <span am-time-ago="created_at"></span>

它会在几秒钟前显示&#34;&#34;。

等消息

我们如何缩短此消息?我们可以从此邮件中删除ago吗?  所以消息就像:  1秒,1分钟,12分钟,1小时,12小时,2年等

我尝试使用以下方法执行此操作:

moment.lang('en', {
relativeTime : {
    future: "in %s",
    past:   "%s ago",
    s:  "sec",
    m:  "1m",
    mm: "%m",
    h:  "1h",
    hh: "%h",
    d:  "1d",
    dd: "%dd",
    M:  "1m",
    MM: "%dm",
    y:  "1y",
    yy: "%dy"
}
});

在模块之后将此项放置在角度app.js中。它适用于1秒,1分钟,1小时等。
但它显示%代替绝对时间。比如%min,而不是12min

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

angular-moment提供amTimeAgoConfig,用于指定是否应显示ago

app.constant('amTimeAgoConfig', {
  withoutSuffix: true
});

moment.js允许我们定义格式为relativeTime的函数,这些函数似乎适用于angular-moment。在这个例子中,我定义了几秒钟和几分钟的函数:

moment.lang('en', {
  relativeTime: {
    future: "in %s",
    past: "%s ago",
    s: function(number, withoutSuffix, key, isFuture) {
      return number + ' sec';
    },
    m: "1m",
    mm: function(number, withoutSuffix, key, isFuture) {
      return number + 'm';
    }
  }
});

如果您想尝试代码here it is on Plunker