如何聆听Angular中的所有移动活动



我正在尝试收听所有移动事件,例如触摸,滑动等。我在文档级别上添加了EventListener。

document.addEventListener('tap', trackTouchActivity, false);
document.addEventListener('swipe', trackTouchActivity, false);

function trackTouchActivity(event) {
    // any activity
}

这仅在Angular应用的第一页上起作用,但在应用程序的其他页面/控制器上不起作用。

我还尝试在$ rototscope中添加代码

app.run(function($rootScope){
  document.addEventListener('swipe', trackTouchActivity, false);
  document.addEventListener('tap', trackTouchActivity, false);
  function trackTouchActivity(event) {
     $rootScope.$apply(function(){
        // any activity
        // some variable = true
        });
    }
});

我是Angular的新手,可能是我做错了什么。如何在整个应用程序中实现侦听事件的功能?

在组件上听触摸(start(x:

@Component({
host: {
'(document:touchstart)': 'onClick($event)',
 },
})
class SomeComponent() {
constructor(private _eref: ElementRef) { }

onClick(event) {
if (!this._eref.nativeElement.contains(event.target)) 
 doSomething();
  }
}

对于我建议使用ngtouch的其他事件,您将可以使用此软件包收听任何其他移动行为。

祝你好运!

相关内容

  • 没有找到相关文章

最新更新