我正在使用ngRoute。 dashboardController
上有$ $区间,如何在离开dashboard
页后取消?我试着听$destroy
。但是当我进入dashboard
页面时,似乎会触发此事件。 $routeChangeSuccess
也不起作用。
路线:
.when('/dashboard', {
templateUrl: 'dashboard.html',
controller: 'dashboardController',
})
.when('/applications', {
templateUrl: 'applications.html',
controller: 'appController',
})
dashboardController:
var update = $interval(function() {
//.....
},1000)
$scope.$watch('$destroy', function(e) {
$interval.cancel(update);
})
答案 0 :(得分:2)
啊我第一次错过了!您有$scope.$watch
,但应该是$on
以下代码将取消$destroy
上的时间间隔,当您的路线发生变化时会调用该时间间隔。
$scope.$on('$destroy', function(e) {
$interval.cancel(update);
});