角度停止计时器

时间:2017-04-12 06:02:00

标签: angularjs timer

我正在处理角度计时器问题。

我需要的是,当点击一个按钮时,计时器应该停止,当点击另一个按钮时,它应该恢复。但在我的情况下,计时器停止但是没有正确恢复。

这是我的代码......

控制器

$scope.startTime = new Date().getTime();
                        $scope.delTime = new Date();
                        $scope.delTime.setMinutes($scope.delTime.getMinutes() + 20);
                        $scope.endTime = parseInt(data.lock_timestamp);

查看

<timer end-time="endTime">{{hhours}} : {{mminutes}} : {{sseconds}}</timer>

这是我的按钮

<button class="btns red-skin sml-btn lrg-radius" ng-click="timerToggle()" type="button">{{timerStatus}}</button>

这是我用来切换计时器的代码

$scope.$on('timer-started', function() {
  $scope.timerStatus = "started";
});
$scope.$on('timer-stopped', function() {
  $scope.timerStatus = "stopped";
});
$scope.$on('timer-reset', function() {
  $scope.timerStatus = "reset";
});
$scope.timerStart = function() {
  $scope.$broadcast('timer-start');
};
$scope.timerStop = function() {
//alert($scope.endTime);
  $scope.$broadcast('timer-stop');
};
$scope.timerResume = function() {
  $scope.$broadcast('timer-resume');
};
$scope.timerToggle = function() {
  switch ($scope.timerStatus) {
    case "started":
      $scope.timerStop();
      break;
    case "stopped":
      $scope.timerResume();
      break;
    case "reset":
      $scope.timerStart();
      break;
  }  
}; 

但是当这个功能起作用时它会停止计时器,但实际上它在后台工作。

即。 如果我在“00:00:10”停止计时器,则显示“00:00:10”,但在5秒后恢复计时器显示“00:00:05”并启动,但我想要的是在“00”中停止:00:10“显示”00:00:10“,5秒后恢复计时器应从”00:00:10“开始。

请找我解决方案,等待回复..

0 个答案:

没有答案