有没有什么方法可以将Livestamp.js时间从'10分钟前'缩短到'10m ago'?

时间:2017-03-13 07:05:35

标签: javascript jquery momentjs livestamp.js

可以通过编辑defaultRelativeTime文件中的moment.js变量来实现:

var defaultRelativeTime = {
    future : 'in %s',
    past   : '%s ago',
    s  : 'a few seconds',
    m  : 'a minute',
    mm : '%d minutes',
    h  : 'an hour',
    hh : '%d hours',
    d  : 'a day',
    dd : '%d days',
    M  : 'a month',
    MM : '%d months',
    y  : 'a year',
    yy : '%d years'
};

对此:

 var defaultRelativeTime = {
        future : 'in %s',
        past   : '%s ago',
        s  : 'a few seconds',
        m  : '1m',
        mm : '%dm',
        h  : '1h',
        hh : '%dh',
        d  : '1D',
        dd : '%dD',
        M  : '1M',
        MM : '%dM',
        y  : '1Y',
        yy : '%dY'
    };

但是有没有其他方法可以在不修改moment.js文件的情况下完成?

1 个答案:

答案 0 :(得分:2)

您可以使用updateLocale功能自定义区域设置的相对时间格式。您需要将相对时间对象传递给它。 在你的情况下:

moment.updateLocale('en', {
relativeTime : {
    future : 'in %s',
    past   : '%s ago',
    s  : 'a few seconds',
    m  : '1m',
    mm : '%dm',
    h  : '1h',
    hh : '%dh',
    d  : '1D',
    dd : '%dD',
    M  : '1M',
    MM : '%dM',
    y  : '1Y',
    yy : '%dY'
}});