Moment.js更改fromNow时间范围

时间:2013-07-04 14:54:21

标签: javascript momentjs

我可以在now.js中更改fromNow的时间范围,因此for小时范围从60秒到59分钟,而其他人则不同(90秒--45分钟)。

ref : Moment.Js

是他们类似于你如何改变lang的东西:

moment.lang('en', {

    relativeTime : {
        future: "Due in %s",
        past:   "%s ago",
        s:  "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"
    }

});

1 个答案:

答案 0 :(得分:2)

duration.humanize具有阈值,用于定义单位何时被视为分钟,一小时等等。例如,默认情况下,超过45秒被视为一分钟,超过22小时被视为一天,依此类推。

要更改这些截止值,请使用moment.relativeTimeThreshold(unit, limit),其中限制为smhdM

  • s秒被视为一分钟的最少秒数
  • m分钟最少被视为一小时的分钟数
  • h小时至少被视为一天的小时数
  • d天至少被视为一个月的天数
  • M个月最少被视为一年的月数

  // Retrieve existing thresholds
  moment.relativeTimeThreshold('s');  // 45
  moment.relativeTimeThreshold('m');  // 45
  moment.relativeTimeThreshold('h');  // 22
  moment.relativeTimeThreshold('d');  // 26
  moment.relativeTimeThreshold('M');  // 11

  // Set new thresholds
  moment.relativeTimeThreshold('s', 40);
  moment.relativeTimeThreshold('m', 40);
  moment.relativeTimeThreshold('h', 20);
  moment.relativeTimeThreshold('d', 25);
  moment.relativeTimeThreshold('M', 10);

注意:在 2.8.1 中添加了检索阈值。