angularjs – $interval函数在我改变路线时继续
发布时间:2020-12-17 08:54:05 所属栏目:安全 来源:网络整理
导读:我在更改路线时遇到有关$interval功能的问题. 这是代码: x = 2; var multiply = function () { x = x * 2; if (x == 134217728) { $interval.cancel($scope.stop); $scope.stop = 0; } } $scope.Result = function () { $scope.stop = $interval(multiply,1
我在更改路线时遇到有关$interval功能的问题.
这是代码: x = 2; var multiply = function () { x = x * 2; if (x == 134217728) { $interval.cancel($scope.stop); $scope.stop = 0; } } $scope.Result = function () { $scope.stop = $interval(multiply,1000); } $scope.Result(); 当x <134217728时,我改变路线以移动到另一页面.问题是路由更改后$interval不会停止.我将promise存储在$scope模型中的变量stop中.我认为$scope在路由改变后不会破坏,这就是$interval继续的原因. 我该如何解决这个问题?
你可以使用$interval.cancel($scope.stop);在控制器/服务中调用$locationChangeSuccess时.
例如. controller('MyController',function($rootScope,$interval) { $scope.stop = $interval(yourOperation,1000); var dereg = $rootScope.$on('$locationChangeSuccess',function() { $interval.cancel($scope.stop); dereg(); }); function yourOperation() {} }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用 gsoap 产生 webservice 代理类
- Angular 2 – 如何选择代表页面中组件和子组件的内容?
- 麻雀虽小,五脏俱全:JSR311让Restful WebService变简单
- twitter-bootstrap – 如何使用SASS扩展/修改(自定义)Boots
- angular6 iframe应用
- 在Vim中,有没有办法在行中水平移动对象/动作(单词,字符,视觉
- 单元测试 – 测试AngularJS范围变量
- Angular使用ng-messages与PHP进行表单数据验证
- scala – 在Spark 2.0中访问向量列时出现MatchError
- 数组 – Bash数组:意外语法错误[已关闭]