Одна из вещей, которую вам может понадобиться сделать, это очистить ресурсы, когда деактивируется контроллер в AngularJS. Чтобы очистить используемые ресурсы, нужно прослушивать событие $destroy в $scope и когда оно срабатывает для очистки. В жизненном цикле контроллера AngularJS вызывается функция $destroy, чтобы удалить текущую область со всеми ее дочерними элементами из родительской области. Функция $destory вызывается AngularJS, и как только это происходит, в области запускается событие $destory. Вы можете использовать эти знания и очищать ресурсы, как только сработает событие $destory.

В следующем примере кода показано, как использовать событие $destroy для удаления обработчика событий, зарегистрированного в каком-либо pubsubService:

$scope.$on('$destroy', function () {
    pubsubService.off('myEvent');
});

Наслаждаться.

Добавить комментарий

facebook linkedin twitter электронная почта

Первоначально опубликовано на сайте blogs.microsoft.co.il 17 июля 2014 г.