如何格式化'angular-moment''am-time-ago'指令?

Mis*_*hko 8 angularjs momentjs angular-moment

现场演示

我使用该am-time-ago指令来显示相对时间戳:

<span am-time-ago="publishedAt"></span>
Run Code Online (Sandbox Code Playgroud)

默认情况下,它被格式化为"一天前","5天前"等.

如何将格式更改为"1d","5d","3h"等?

Nix*_*Nix 23

您可以在配置或应用程序启动的某个位置自定义humanize.

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

x = new moment();
z = x.clone().add('hours',1);
x.from(z, false);
>> 1h ago
x.from(z, true) //no ago
>> 1h
Run Code Online (Sandbox Code Playgroud)

关于realtiveTime的文档

示例:http: //jsbin.com/satohazu/1/edit

  • 任何想法如何为不同的控制器设置两个不同的lang(我的意思是分钟/秒的格式等)?换句话说,在一个盒子里我需要显示:20分钟前,但在第二个盒子里,20分钟. (2认同)