gpt4 book ai didi

javascript - 离开路线时 Angular 解除绑定(bind)事件

转载 作者:行者123 更新时间:2023-12-02 16:15:02 24 4
gpt4 key购买 nike

我的应用程序中的一个路由需要一些特殊的 keypress 事件绑定(bind),但其他路由都不需要。

因此,在该路线的 Controller 中,我像这样绑定(bind)事件:

angular.element( document.body ).bind('keydown keypress', function (event)
{
//...
});

我刚刚注意到,当我导航到该路线,然后离开并转到不同的路线时,这些键盘事件绑定(bind)仍然处于事件状态。

当路由更改为不同的 Controller 时,如何解除事件绑定(bind)?

最佳答案

当范围被破坏时,您可以取消绑定(bind)事件。

$scope.$on('$destroy', function() {
angular.element( document.body ).unbind('keydown keypress', handler);
});

http://api.jquery.com/unbind/有关于如何解除事件绑定(bind)的引用。

只要作用域在 Angular 上被破坏,$destroy 事件就会被触发。

关于javascript - 离开路线时 Angular 解除绑定(bind)事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29750633/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com