需求:在angualr中,跳转页面之后,本页面的定时器无法关闭,仍在其他页面进行调用,因此使用以下监听路由的方法实现离开本页面就关闭定时器。
引入:
import { Router, NavigationStart, NavigationEnd } from '@angular/router';
import { filter } from 'rxjs/operators';
正文:
export class NewsListPage extends ScrollbasePage implements OnInit {
news$: Observable<any>;
constructor(
private routeInfo:ActivatedRoute,
private router: Router,
){ }
ngOnInit() {
this.router.events.pipe(//监听路由代码
filter(event => event instanceof NavigationEnd)
).subscribe((res: any) => {
//在离开本页面之后要处理的事件,我的是关闭定时器,定时器相关代码就不写了
clearInterval(this.setInterval);
});
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/149740.html