我一直在查看此代码,但无法找到任何
尝试使用角度过滤{{bla.bla |日期: 'HH:MM:SS'}}
但它不起作用。 有人可以帮我吗?谢谢!
答案 0 :(得分:1)
filter('songTime',function(){
return function (s) {
var ms = s % 1000;
s = (s - ms) / 1000;
var secs = s % 60;
s = (s - secs) / 60;
var mins = s % 60;
var hrs = (s - mins) / 60;
return hrs + ':' + mins + ':' + secs + ':' + ms;
};
}
并像{{bla.bla | songTime}}。您可以美化过滤器内的日期。
答案 1 :(得分:1)
我刚刚遇到这个问题寻找答案,但无法找到一个好的解决方案,所以如果有人需要的话,我自己创建了这个过滤器。
app.filter('formatDuration', function () {
return function (input) {
var totalHours, totalMinutes, totalSeconds, hours, minutes, seconds, result='';
totalSeconds = input / 1000;
totalMinutes = totalSeconds / 60;
totalHours = totalMinutes / 60;
seconds = Math.floor(totalSeconds) % 60;
minutes = Math.floor(totalMinutes) % 60;
hours = Math.floor(totalHours) % 60;
if (hours !== 0) {
result += hours+':';
if (minutes.toString().length == 1) {
minutes = '0'+minutes;
}
}
result += minutes+':';
if (seconds.toString().length == 1) {
seconds = '0'+seconds;
}
result += seconds;
return result;
};
});
以下是其使用示例:
{{247000 | formatDuration}} --> Result: 4:07
{{4748000 | formatDuration}} --> Result: 1:19:08
这将适用于任何小时数,分钟数和秒数,并在必要时包含前导零数字。