angularjs中的$destroy和$timeout
Posted 阿力瓦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angularjs中的$destroy和$timeout相关的知识,希望对你有一定的参考价值。
module.controller("TestController", function($scope, $timeout) { var onTimeout = function() { $scope.value += 1; timer = $timeout(onTimeout, 1000); }; var timer = $timeout(onTimeout, 1000); $scope.value = 0; $scope.$on("$destroy", function() { if (timer) { $timeout.cancel(timer); } }); });
上面的demo展示了$destroy和$timeout的用法
$destroy用在清理一些资源.比如轮询这些.
$timeout 基于window.timeout的封装 $timeoutAPI
常用方法 var promise = $timeout(onTimeout, 1000); 返回一个promise 对象用于在 $timeout.cancel(promise);
终止这次timeout 操作;
当在一个页面需要轮询的时候我就可以用到$timeout,当切换到下一个控制器的时候停止当前页面的timeout操作用到$destroy.
以上是关于angularjs中的$destroy和$timeout的主要内容,如果未能解决你的问题,请参考以下文章
Angularjs - 如何“ng-repeat”一个 div 以获取“ng-model 中的值”-times?