2017-07-18 6 views
0

角度jのオートリフレッシュ機能について心配していました。私はタイムアウトのコンセプトで試しました。それは私が設定した時間間隔のために爽やかでした。angularjsのボタンを使ってオートリフレッシュのオン/オフを設定する方法

app.controller('buildCtrl', ['$timeout', function($timeout) { 
dataService.getAppData($scope.periodData).success(function(response) { 
     $scope.loading = false; 
     bc.serviceGridData = response.appdata; 
     $scope.data = response.appdata; 
     $timeout(function() { 
      dataService.getAppData($scope.periodData); 
      $state.reload(); 
     }, 20000) 
} 
}]); 

は今、私はそれfunctionality.Ifこの$タイムアウトがページ上で(オン/オフ)を有効または無効にするためのボタンを必要とするrefresh.The時間間隔がする必要がいけない、それはページオフになっている場合は更新する必要があります明らかです。

これで私を助けてもらえますか?このボタンをオン/オフ機能に設定するには、1つのボタンが機能しますか。 ありがとうございました。

+0

オフボタンで '$ timeout.cancel()'を使うことができます。 tiはタイムアウトで関連タスクをキャンセルします –

+0

それから私はオンとオフの2つのボタンが必要ですが、私はそれが1つのボタンで完了したいです。 –

答えて

0

var app = angular.module('app', [ ]); 
 

 
app.controller('MainCtrl', function($scope,$timeout) { 
 
    
 
    
 
$scope.StartTimeOut=false; 
 
    $scope.ON_Off=function(isOn) 
 
    { 
 
    
 
    if(isOn) 
 
    { 
 
     alert("true") 
 
    } 
 
    else 
 
    { 
 
     alert("false") 
 
    } 
 
    } 
 
    
 
    
 
});
<!doctype html> 
 
<html ng-app="app"> 
 
    <head> 
 
    
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
    
 
    </head> 
 
    <body> 
 

 
    <div ng-controller="MainCtrl"> 
 
    <input type="button" value="Click" ng-click=ON_Off(StartTimeOut=!StartTimeOut) /> 
 
    </div> 
 

 
    <script src="app.js"></script> 
 
    </body> 
 
</html>

あなたは機能のifelse部分であなたのタイムアウトのコードを書くことができます。

関連する問題