更改 angular 控制器时删除 window.onresize
Remove window.onresize when changing angular controller
我有一个使用 ui-router 的单页应用程序,其中列表页面使用 listController,详情页面使用 detailController。
详细信息页面有 window.onresize
事件附加,而列表页面没有。
问题是每当我从详细信息页面移动到列表页面时,onresize 事件仍然监听并抛出有关调整大小目标元素不存在的错误。
如何在我更改页面时删除 window.onresize 事件侦听器?
(function() {
angular
.module('app')
.controller('listController', function() {
// do things for list page
})
.controller('detailController', function() {
window.onresize = function() {
// do some resize function
}
})
})();
一旦路由离开并且控制器实例被销毁,您可以重置 onresize 函数。
$scope.$on('$destroy', function() {
window.onresize = null
}
我有一个使用 ui-router 的单页应用程序,其中列表页面使用 listController,详情页面使用 detailController。
详细信息页面有 window.onresize
事件附加,而列表页面没有。
问题是每当我从详细信息页面移动到列表页面时,onresize 事件仍然监听并抛出有关调整大小目标元素不存在的错误。
如何在我更改页面时删除 window.onresize 事件侦听器?
(function() {
angular
.module('app')
.controller('listController', function() {
// do things for list page
})
.controller('detailController', function() {
window.onresize = function() {
// do some resize function
}
})
})();
一旦路由离开并且控制器实例被销毁,您可以重置 onresize 函数。
$scope.$on('$destroy', function() {
window.onresize = null
}