Предположим, у меня есть контроллер для страницы, которая отображается в ng-view
.
Этот контроллер связывается с некоторыми событиями внешнего источника (например, с шиной сообщений в целом) для обновления своей модели. Это в основном работает очень просто:
function MyController ($scope) {
$scope.bar = '…';
externalSource.on('foo', function (data) {
$scope.$apply(function () {
$scope.bar = data.bar;
});
});
}
Проблема заключается в следующем: как отключить контроллер от внешнего источника, если вид, с которым он связан, больше не отображается?
Есть ли что-то вроде события dispose
или что-то подобное?
Или мой подход совершенно неправильный, и я должен как-то разобраться с чем-то подобным? Если да, то как?