angular.js - How to use angular $interval to implement start timing and end timing on a button
怪我咯
怪我咯 2017-05-15 17:11:04
0
2
532

My code logic is as follows, I want to implement it:

  1. Click the query button to turn on the timer. The button text changes to Stop Query,

  2. Click to stop query and cancel the schedule

$scope.submitRequest = function () {
    if ($scope.onlyButton == "查询") {
         $scope.onlyButton = "停止查询";
            $interval(function()
                {
                    //具体方法
                }
                ,5000);
            }
    else{
         setTimeout(function(){
            $scope.onlyButton = "查询";
            $interval.cancel(stop);
            },0)
        };
    }
    

But I failed to cancel the timer, please help...

怪我咯
怪我咯

走同样的路,发现不同的人生

reply all(2)
Peter_Zhu

淡淡烟草味

LZ’s code can completely make a status mark outside, for example:

var interval;
$scope.startStatus = false;

$scope.submitRequest = function(){

    if( !$scope.startStatus ){
        interval = $interval(...);
    } else {
        $interval.cancel(interval);  
    }
    
    $scope.startStatus = !$scope.startStatus;
    
}

Then use it directly in VIEW like this:

<button ng-bind=" !startStatus ? '查询' : '停止查询' "></button>

I think it’s better to write like this~

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template