remove eventlisteners on destroy
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
|
||||
var scrollableNode = appRootNode.closest(".umb-scrollable");
|
||||
scrollableNode.addEventListener("scroll", onScroll);
|
||||
scrollableNode.addEventListener("mousehweel", cancelScrollTween);
|
||||
scrollableNode.addEventListener("mousewheel", cancelScrollTween);
|
||||
|
||||
function onScroll(event) {
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
|
||||
$scope.registerPropertyGroup = function(element, appAnchor) {
|
||||
propertyGroupNodesDictionary[appAnchor] = element;
|
||||
}
|
||||
};
|
||||
|
||||
$scope.$on("editors.apps.appChanged", function($event, $args) {
|
||||
// if app changed to this app, then we want to scroll to the current anchor
|
||||
@@ -104,6 +104,12 @@
|
||||
}
|
||||
});
|
||||
|
||||
//ensure to unregister from all dom-events
|
||||
$scope.$on('$destroy', function () {
|
||||
cancelScrollTween();
|
||||
scrollableNode.removeEventListener("scroll", onScroll);
|
||||
scrollableNode.removeEventListener("mousehweel", cancelScrollTween);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -10,15 +10,25 @@
|
||||
};
|
||||
|
||||
vm.anchorClicked = function(anchor, $event) {
|
||||
|
||||
vm.onOpenAnchor({item:vm.item, anchor:anchor});
|
||||
$event.stopPropagation();
|
||||
$event.preventDefault();
|
||||
};
|
||||
|
||||
// needed to make sure that we update what anchors are active.
|
||||
vm.mouseOver = function() {
|
||||
$scope.$digest();
|
||||
}
|
||||
|
||||
var componentNode = $element[0];
|
||||
|
||||
componentNode.classList.add('umb-sub-views-nav-item');
|
||||
componentNode.addEventListener('mouseover', vm.mouseOver);
|
||||
|
||||
//ensure to unregister from all dom-events
|
||||
$scope.$on('$destroy', function () {
|
||||
componentNode.removeEventListener("mouseover", vm.mouseOver);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user