У меня есть кусок кода, работающего в (Angularjs v1.3.20, JQuery 1.11.1), который связывает событие изменения размера с функцией масштабирования, как так
angular.element(window).resize(function() {
scaleContent();
});
Однако после выхода из страницы, использующей этот код, следующая страница использует эту привязку, и это вызывает всевозможные проблемы при масштабировании этой страницы.
Мои векторы до сих пор включают в себя:
angular.element(window).on('resize', scaleContent);
с
$scope.$on('$destroy', function() {
angular.element(window).off('resize', scaleContent)
});
Но безрезультатно. Я также пробовал связывать / отстегивать и различные перестановки связывания / отсоединения / включения / выключения и передачи scaleContent в качестве ссылки / вызова функции. Лучшие результаты, которые у меня были до сих пор, используют bind / unbind, но это устарело, и я хочу использовать on / off, если это возможно.
Я ищу надежный способ удалить эту привязку изменения размера окна при уничтожении страницы.
Edit With Solution: Я решил ряд проблем. Сначала я по ошибке
$scope.$on('destroy',...);
который я заменил
$scope.$on('$destroy',...);
Затем я переместил целую часть уничтожения за пределы функции инициализации контроллера (которую я не считал достаточно важной, чтобы упомянуть) и переместил вызов после превышения времени ожидания функции scalecontent. Это были все вещи, которые я не считал слишком важными, но сейчас (на самом деле) это работает.