背景
由于使用原生addEventListener方法会导致this指向有问题,并且无法移除事件监听,导致事件多次绑定,影响性能,而es6中都是箭头函数,所以ng6中可以使用使用rxjs
一、package.json
node版本:8.10.0
angular版本:6.0.7
rxjs版本:6.2.1
二、代码实现
import { fromEvent } from 'rxjs';
// 绑定页面点击事件
monitorClick() {
this.$pageClick = fromEvent(document, 'click').subscribe(() => {
//
});
}
// 移除页面点击事件
removeClick() {
if (this.$pageClick) {
this.$pageClick.unsubscribe();
}
}