如何将上下文绑定和取消绑定到$document

How to bind and unbind context to $document

本文关键字:绑定 document 取消 上下文      更新时间:2023-09-26

我得到了这样的东西,它按预期工作:

$document.on('click', this.clickHandler.bind(this));

如果没有bind(this)clickHandler中的this将指向文档对象,所以这就是我把它放在那里的原因。然而,当我试图解除绑定时,它的行为不正确。我尝试过以下操作:

$document.off('click',  this.clickHandler);
$document.off('click',  this.clickHandler.bind(this));
$document.unbind('click', this.clickHandler);

没有一个像我期望的那样工作。我想从$document中删除特定的单击事件处理程序(及其this上下文)。例如,我想在$scope.$destroy中做到这一点。

我可以使用它:

$document.off('click',  this.clickHandler).unbind();