我有几个$超时表达式在模态控制器
App.controller('ModalCtrl',function ($scope,$timeout) { for (var i = 0; i < 10; i++) { (function () { var timer = $timeout(function () { console.log('timer') },1000); })() } })
我需要清除所有的计时器当调用模态:
App.controller('MainCtrl',$modal,$timeout) { $scope.showMap = function () { var modal = $modal.open({ templateUrl: 'modalap.html',controller: 'modalCtrl',}) modal.result.then(function () { //fires when modal is resolving },function () { //fires when modal is invoking }); } })
我怎样才能做到这一点?
PS对不起,代码格式错误。我不知道为什么,但我不能格式化更好。我复制代码here:
$ timeout服务返回一个promise对象,可用于取消超时。
// Start a timeout var promise = $timeout(function() {},1000); // Stop the pending timeout $timeout.cancel(promise);
要取消所有挂起的超时,您需要维护promises列表,并在打开模态时取消完整列表。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。