假設我有一個正在渲染爲ng-view
的頁面的控制器。
該控制器綁定到外部源的某些事件(例如應用程序範圍的消息總線)以更新其模型。基本上,這工作很容易:
function MyController ($scope) {
$scope.bar = '…';
externalSource.on('foo', function (data) {
$scope.$apply(function() {
$scope.bar = data.bar;
});
});
}
的問題是:如何從曾經認爲它是有沒有再顯示相關的外部源解除綁定控制器?
是否有某事如dispose
事件或類似的東西?
或者是我的方法完全錯誤,我應該以某種方式處理類似的事情?如果是這樣,怎麼樣?
如果您在('event',...)**方法上使用jQuerys **,只需簡單地調用** off('event')**即可刪除該事件。還是我誤解了你? – 2013-03-17 11:59:47
這不是一個特別的問題。它取決於您正在使用的外部事件資源。 – 2013-03-17 12:01:55
是的。我知道如何解除綁定,但我不知道何時/在哪裏做。這取決於控制器的生命週期,這當然與AngularJS有關。 – 2013-03-17 13:02:30