Smo*_*thi 6 javascript momentjs
如果我使用
moment().startOf("minute").fromNow();
Run Code Online (Sandbox Code Playgroud)
我会得到:
a few seconds ago
a minute ago
...
Run Code Online (Sandbox Code Playgroud)
是否可以格式化输出如下?
00:00 minutes ago
00:01 minutes ago
...
Run Code Online (Sandbox Code Playgroud)
Vin*_*zoC 11
您可以自定义时刻格式化您使用区域设置的相对时间updateLocale.
请注意,文档说:
如果语言环境需要对令牌进行额外处理,则可以将令牌设置为具有以下签名的函数.该函数应返回一个字符串.
function (number, withoutSuffix, key, isFuture) {
return string;
}
Run Code Online (Sandbox Code Playgroud)
在您的情况下,您可以这样做:
var m1 = moment().subtract(5, 'm');
var m2 = moment().subtract(15, 's');
console.log(m1.fromNow());
console.log(m2.fromNow());
moment.updateLocale('en', {
relativeTime : {
future: "in %s",
past: "%s ago",
s: function (number, withoutSuffix, key, isFuture){
return '00:' + (number<10 ? '0':'') + number + ' minutes';
},
m: "01:00 minutes",
mm: function (number, withoutSuffix, key, isFuture){
return (number<10 ? '0':'') + number + ':00' + ' 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"
}
});
console.log(m1.fromNow());
console.log(m2.fromNow());Run Code Online (Sandbox Code Playgroud)
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script>Run Code Online (Sandbox Code Playgroud)
我不确定上面的代码涵盖了你需要的所有情况,但我认为这可能是一个很好的起点.
可以用fromNow()方法。
moment(<time>).fromNow()
moment([2007, 0, 29]).fromNow(); // 4 years ago
Run Code Online (Sandbox Code Playgroud)
如果通过true,则可以获得不带后缀的值。
moment([2007, 0, 29]).fromNow(); // 4 years ago
moment([2007, 0, 29]).fromNow(true); // 4 years
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,您可以参考来源
| 归档时间: |
|
| 查看次数: |
13480 次 |
| 最近记录: |