gpt4 book ai didi

javascript - Angular2 RC1 - 如何取消绑定(bind)窗口事件?

转载 作者:行者123 更新时间:2023-11-28 05:56:29 25 4
gpt4 key购买 nike

好的,所以这可能已经被问过并回答了,但我找不到它。在我的 HTML 中,我声明了 window.scroll 事件的监听器。由于这在我的 HTML 中声明,

  1. 有没有办法解除滚动事件的绑定(bind)?我可以通过 ngOnDestroy() 来完成吗?如果是这样,怎么办?
  2. 或者不解除绑定(bind)并假设 NG2 在组件被销毁时会清理困惑是否安全?

我正在使用Angular2 RC.1

我的 HTML:

<div (window:scroll)="bindToScrollEventFunc()"></div>

我有点担心,如果组件被破坏,监听函数仍然会存在于内存中,如果没有解除绑定(bind),会导致问题。非常感谢有关此事的任何信息! TIA!

最佳答案

  1. @drewmoore 已在评论中引用 @Günter's answer :“对于以声明方式添加的监听器,无法取消注册”。

  2. 当组件被销毁时,Angular 将取消注册它添加的任何/所有事件监听器。
    让我们考虑一下……如果 Angular 不这样做,就会在大型应用程序中导致严重的内存泄漏。 Angular 的目标是拥有多个开发人员的大型应用程序。

关于javascript - Angular2 RC1 - 如何取消绑定(bind)窗口事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37624672/

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