javascript - 有什么办法可以将 Livestamp.js 时间从 '10 minutes ago' 缩短到 '10m ago' 吗?

标签 javascript jquery momentjs livestamp.js

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

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 文件的情况下完成?

最佳答案

您可以使用 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'
}});

关于javascript - 有什么办法可以将 Livestamp.js 时间从 '10 minutes ago' 缩短到 '10m ago' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42758094/

相关文章:

javascript - 如何将日期时间字符串转换为特定的日期时间格式

javascript - 将外部 CSS 作为内联样式应用于 HTML 节点(vanilla Javascript/Coffeescript)

javascript - Angularjs 和 Requirejs : Error: [$injector:modulerr]

java - 如何使用for循环从jsp获取jquery中的值?

javascript - 为什么 moment.js subtract 方法不起作用?

javascript - 将 moment 设置为 0 时的 19 小时偏移量(使用 moment.js)

javascript - 鼠标单击按钮时更改悬停颜色

javascript - 固定页眉和页内 anchor vs. Tripit Slate

javascript - 为什么我们需要将 window 和 undefined 传递给这个 jquery 插件?

javascript - jQuery 在更改值时设置字体大小奇怪的行为