我在项目中使用Moment.js库进行一段时间的操作。
我目前使用calendar
函数,该函数返回“今天下午6:28”或“上周日下午6:42”等信息。
我现在需要第二准确的信息,例如“今天下午6:28:39”或“上周日下午6:42:55”。在Moment.js库中有没有内置的方法呢?
答案 0 :(得分:3)
Moment is highly customizable。在这种情况下,您希望格式化LT条目,因为日历对象使用:
moment.lang('en', {
calendar : {
lastDay : '[Yesterday at] LT',
sameDay : '[Today at] LT',
nextDay : '[Tomorrow at] LT',
lastWeek : '[last] dddd [at] LT',
nextWeek : 'dddd [at] LT',
sameElse : 'L'
}
});
在改变之前:
moment().subtract('days', 2).calendar()
"last Wednesday at 3:44 PM"
所以现在你需要自定义LT:
moment.lang('en', {
longDateFormat : {
LT: "h:mm:ss A", // <----------- add :ss
L: "MM/DD/YYYY",
l: "M/D/YYYY",
LL: "MMMM Do YYYY",
ll: "MMM D YYYY",
LLL: "MMMM Do YYYY LT",
lll: "MMM D YYYY LT",
LLLL: "dddd, MMMM Do YYYY LT",
llll: "ddd, MMM D YYYY LT"
}
});
现在你的时间缩短了几秒钟:
moment().subtract('days', 2).calendar()
"last Wednesday at 3:41:05 PM"
答案 1 :(得分:1)
您可以将Moment的长日期格式更改为包含秒数。 calendar
LT
函数使用"h:mm a"
格式,该格式最初设置为LT
(时间分钟加上AM / PM)。您可以By default "h:mm:ss A"
格式包含alter(moment.lang('en', {
longDateFormat : {
LT: "h:mm:ss A",
L: "MM/DD/YYYY",
l: "M/D/YYYY",
LL: "MMMM Do YYYY",
ll: "MMM D YYYY",
LLL: "MMMM Do YYYY LT",
lll: "MMM D YYYY LT",
LLLL: "dddd, MMMM Do YYYY LT",
llll: "ddd, MMM D YYYY LT"
}
});
),如下所示:
{{1}}