Explorar o código

abort interval on scope destroy

David %!s(int64=10) %!d(string=hai) anos
pai
achega
e9864fe1bb
Modificáronse 1 ficheiros con 10 adicións e 1 borrados
  1. 10 1
      front/controllers/jobsCtrl.js

+ 10 - 1
front/controllers/jobsCtrl.js

@@ -1,4 +1,5 @@
 app.controller('jobsCtrl', function ($scope, $http,$interval) {
+	var promise;
 	$scope.update = function() {
 		$http.get('back/list/jobs').success(function(data) {
 	   		$scope.working  = data.working;
@@ -6,5 +7,13 @@ app.controller('jobsCtrl', function ($scope, $http,$interval) {
 	};
 
 	$scope.update();
-	$interval($scope.update, 1500);
+	promise = $interval($scope.update, 1500);
+
+	$scope.stop = function() {
+		$interval.cancel(promise);
+	};
+
+	$scope.$on('$destroy', function() {
+		$scope.stop();
+	});
 });