我创建了一个有效的Plunkr,它允许您逐步添加和减去分钟。然而,时间是一个简单的字符串'15',它通过一个过滤器输出'15min'。我想改变这一点,而不是'15分钟'是'00:15'我怎么能将hourMinFilter重做为timeFilter?
app.controller('MainCtrl', function($scope) {
$scope.readyTime = 15;
});
app.filter('hourMinFilter', function () {
return function (value, max) {
if (value == max) return 'All';
var h = parseInt(value / 60);
var m = parseInt(value % 60);
var hStr = (h > 0) ? h + 'hr' : '';
var mStr = (m > 0) ? m + 'min' : '';
var glue = (hStr && mStr) ? ' ' : '';
return hStr + glue + mStr;
};
});
答案 0 :(得分:2)
我建议尝试使用现有代码。你基本上只需要对结果进行测试并插入缺失的零。
如果你不耐烦,这是一个建议的解决方案:
http://plnkr.co/edit/aDIDUV7r2YpqnuuShIi0?p=preview
更改了三行:
var hStr = (h > 0) ? h + 'hr' : '';
var mStr = (m > 0) ? m + 'min' : '';
var glue = (hStr && mStr) ? ' ' : ''
到
var hStr = (h > 0) ? h >= 10 ? h : '0' + h : '00';
var mStr = (m > 0) ? m >= 10 ? m : '0' + m : '00';
var glue = (hStr && mStr) ? ':' : '';