我使用了来自https://github.com/icambron/moment-countdown的简单脚本来进行简单的倒计时。我正在使用下面的代码。
二手代码:
$interval(function(){
$scope.nextDate = moment().countdown($scope.nextDateGet,
countdown.DAYS|countdown.HOURS|countdown.MINUTES|countdown.SECONDS
);
$scope.daysCountdown = moment($scope.nextDate).format('dd');
$scope.hoursCountdown = moment($scope.nextDate).format('hh');
$scope.minutesCountdown = moment($scope.nextDate).format('mm');
$scope.secondsCountdown = moment($scope.nextDate).format('ss');
},1000,0);
这样可以提供正确的输出
$scope.nextDate.toString();
但是这包含一个字符串,其余的天,小时,分钟和秒。所以我决定用这个将这个字符串分成4个字符串:
$scope.daysCountdown = moment($scope.nextDate).format('dd');
$scope.hoursCountdown = moment($scope.nextDate).format('hh');
$scope.minutesCountdown = moment($scope.nextDate).format('mm');
$scope.secondsCountdown = moment($scope.nextDate).format('ss');
输入示例
2016-10-15 10:00:00 // $scope.nextDateGet
所需的输出是这样的:
0 // (days)
12 // (hours)
24 // (minutes)
30 // (seconds)
但我似乎无法格式化其余的日子,我得到了这个输出:
Fr // Shortcode for the day the item is scheduled => I need the remaining days in this case that would be 0. The other formatting is correct.
答案 0 :(得分:0)
如果剩余天数不是0,则以下输出正确:
{1, 2, 3}
如果剩余天数为0,则会在14天设置剩余天数,因此这项工作可以解决问题:
$scope.daysCountdown = moment($scope.nextDate).format('D');
欢迎任何改进此代码的建议。