setInterval、clearInterval 实例超出范围

Nit*_*rof 2 setinterval typescript ionic3

在 Ionic3 中,我设置了一个刷新数据的间隔,我希望它在离开视图时停止。但我无法确定间隔实例的范围...请注意,这是我打字稿的第一步...

updateData(){    
  var interval = setInterval(() => {
    this.getdata.getData().subscribe( data => {
      this.channels = data.channels;
    })
  },2000);
}

ionViewWillLeave() {
  clearInterval(interval);//[TS]Cannot find name 'interval'
  console.log('leave view');
}
Run Code Online (Sandbox Code Playgroud)

bas*_*rat 7

只需将变量移动到外部范围即可,例如

interval: number; // Moved it out. 

updateData(){    
  this.interval = setInterval(() => {
    this.getdata.getData().subscribe( data => {
      this.channels = data.channels;
    });
  },2000);
}

ionViewWillLeave() {
  clearInterval(this.interval);
  console.log('leave view');
}
Run Code Online (Sandbox Code Playgroud)