Javascript 角度倒计时,重新启动

Javascript 角度倒计时,重新启动,javascript,angularjs,Javascript,Angularjs,我用一些数据创建了一个简单的仪表板,作为Angular中的试用。通过PHP,我可以获得一些天气数据、通过谷歌新闻发布的新闻以及关于一个关键词的10条推文 使用$interval时,我每10秒刷新一次仪表板,但我需要从10到0的倒计时,当触发该时间间隔时,倒计时会一次又一次地开始 有人能帮我做到这一点吗 当前代码为submitbutton和$interval触发器: $scope.formSubmit = function(){ $scope.getResults(); if($

我用一些数据创建了一个简单的仪表板,作为Angular中的试用。通过PHP,我可以获得一些天气数据、通过谷歌新闻发布的新闻以及关于一个关键词的10条推文

使用$interval时,我每10秒刷新一次仪表板,但我需要从10到0的倒计时,当触发该时间间隔时,倒计时会一次又一次地开始

有人能帮我做到这一点吗

当前代码为submitbutton和$interval触发器:

$scope.formSubmit = function(){ 
    $scope.getResults();
    if($scope.interval){            
        intervalController();
    }
}

function intervalController(){
    $interval($scope.getResults, 10000);
}

$scope.getResults = function(){
    if($scope.city){
        $http({
            method: 'POST',
            url: 'server.php',
            data: {city : $scope.city}
        }).then(function successCallback(response){
            console.log(response.data);
                //some data processing here
        }, function errorCallback(response){

        })
    }
}
$scope.countDownValue
中,您可以向用户显示您的倒计时值

还有一点

不要忘记取消订阅范围销毁的$interval。否则,你将有一段时间白活下去。 以下是正确破坏间隔的方法:

$scope.$on('$destroy', function() {
  if (intervalCanceller) {
    $interval.cancel(intervalCanceller);
  }
});
$scope.countDownValue
中,您可以向用户显示您的倒计时值

还有一点

不要忘记取消订阅范围销毁的$interval。否则,你将有一段时间白活下去。 以下是正确破坏间隔的方法:

$scope.$on('$destroy', function() {
  if (intervalCanceller) {
    $interval.cancel(intervalCanceller);
  }
});

请发布您迄今为止尝试过的代码请发布您迄今为止尝试过的代码