2017-03-05 54 views
0

我在setInterval中获取当前鼠标位置。我怎样才能完成与Typescript和Angular 2相同的?Angular 2如何使用Observable在setInterval上获取mouseX?

我的意思是我可以使用Observables创建一个计时器,但是如何在该计时器中读取当前鼠标位置?

let startX = event.pageX; 

setInterval(function(){ 
    let diff = window.mouseX - startX; 
    console.log(diff); 
}, 50) 
+1

完全相同的方式?有什么问题?什么让你认为你不能在Angular或TypeScript中使用setInterval()? –

+0

首先,你应该创建一个observable。 –

+0

@JB Nizet因为我不能以这种方式访问​​窗口对象。它不知道Typescript –

回答

0

,你可以这样做:

let startX = event.pageX; 


    let observable = Observable.create((observer: any) => { 

     setInterval(function(){ 
      let diff = window.mouseX - startX; 
      observer.next(diff); 
     }, 50) 

    });