AngularJS - 如何将毫秒转换为xHours和yMins [英] AngularJS - How do you convert milliseconds to xHours and yMins
本文介绍了AngularJS - 如何将毫秒转换为xHours和yMins的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个要求,我希望在AngularJS中将毫秒转换为xHours和yMins。
I've a requirement where I want to convert milliseconds to xHours and yMins in AngularJS.
对于ex。 3600000应显示为1h 0m。
For ex. 3600000 should be displayed as 1h 0m.
我尝试使用日期:'H:m'
和日期:来自日期格式的'HH:mm'
Angular的网站。
I tried using date:'H:m'
and date:'HH:mm'
from the date formats on Angular's website.
但那些给出19:0和19:00而不是1h 0m。
But those give 19:0 and 19:00 instead of 1h 0m.
任何指针实现这一目标会很有帮助。
Any pointers of achieving this will be helpful.
谢谢
推荐答案
让make一个自定义过滤器,例如:
Let make a custom filter for this, e.g:
.filter('millSecondsToTimeString', function() {
return function(millseconds) {
var oneSecond = 1000;
var oneMinute = oneSecond * 60;
var oneHour = oneMinute * 60;
var oneDay = oneHour * 24;
var seconds = Math.floor((millseconds % oneMinute) / oneSecond);
var minutes = Math.floor((millseconds % oneHour) / oneMinute);
var hours = Math.floor((millseconds % oneDay) / oneHour);
var days = Math.floor(millseconds / oneDay);
var timeString = '';
if (days !== 0) {
timeString += (days !== 1) ? (days + ' days ') : (days + ' day ');
}
if (hours !== 0) {
timeString += (hours !== 1) ? (hours + ' hours ') : (hours + ' hour ');
}
if (minutes !== 0) {
timeString += (minutes !== 1) ? (minutes + ' minutes ') : (minutes + ' minute ');
}
if (seconds !== 0 || millseconds < 1000) {
timeString += (seconds !== 1) ? (seconds + ' seconds ') : (seconds + ' second ');
}
return timeString;
};
});
然后使用它:
<div>{{ millSeconds | millSecondsToTimeString }}</div>
这篇关于AngularJS - 如何将毫秒转换为xHours和yMins的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文