AngularNgoninit每次路由时都会被调用
创始人
2024-10-28 17:01:15
0次

使用RxJS的takeUntil操作符将订阅取消时机与路由导航关联起来,以便在组件销毁前取消未完成的订阅。

示例代码:

import { Component, OnInit, OnDestroy } from '@angular/core'; import { takeUntil } from 'rxjs/operators'; import { Subject } from 'rxjs'; import { Router, NavigationEnd } from '@angular/router';

@Component({ selector: 'app-my-component', templateUrl: './my-component.component.html', styleUrls: ['./my-component.component.css'] }) export class MyComponentComponent implements OnInit, OnDestroy { private ngUnsubscribe = new Subject();

constructor(private router: Router) { }

ngOnInit() { this.router.events .pipe(takeUntil(this.ngUnsubscribe)) .subscribe(event => { if (event instanceof NavigationEnd) { // 在这里编写处理导航结束时要做的事情 } }); }

ngOnDestroy() { this.ngUnsubscribe.next(); this.ngUnsubscribe.complete(); } }

在组件的ngOnInit方法中,使用takeUntil操作符将路由事件与ngUnsubscribe主体关联起来,以便在组件销毁之前取消任何未完成的订阅。在这个例子中,我们只关心NavigationEnd事件。在组件的ngOnDestroy方法中,我们取消与ngUnsubscribe相关的所有订阅。

相关内容

热门资讯

一分钟带你了解外挂!MG棋牌外... 一分钟带你了解外挂!MG棋牌外挂AI教程,MG棋牌多功能本来是有外挂教程1)MG棋牌免费钻石:进一步...
教学盘点透视挂!91y捕鱼透视... 教学盘点透视挂!91y捕鱼透视挂AIapp,91y捕鱼多功能原来存在有透视挂app1、首先打开91y...
实操分享外挂!创乐缘外挂AI技... 实操分享外挂!创乐缘外挂AI技巧,创乐缘多功能一直有外挂技巧1、创乐缘有没有辅助教程、创乐缘有透视吗...
玩家必看教程辅助!天府棋牌辅助... 玩家必看教程辅助!天府棋牌辅助AI脚本,天府棋牌多功能原来是真的有辅助脚本天府棋牌脚本下载中分为三种...
一分钟揭秘作弊器!八戒作弊器A... 一分钟揭秘作弊器!八戒作弊器AI软件,八戒多功能好像有作弊器软件1、首先打开八戒辅助器下载最新版本,...
9分钟了解作弊器!开心跑得快作... 9分钟了解作弊器!开心跑得快作弊器AI软件,开心跑得快多功能本来是有作弊器软件在进入开心跑得快软件靠...
推荐一款外挂!湘中竞技外挂AI... 推荐一款外挂!湘中竞技外挂AI方法,湘中竞技多功能果然真的有外挂方法1、起透看视 湘中竞技辅助软件价...
分享给玩家作弊器!萍乡打滚筒作... 分享给玩家作弊器!萍乡打滚筒作弊器AI攻略,萍乡打滚筒多功能确实存在有作弊器攻略1、在萍乡打滚筒插件...
玩家必看秘籍透视挂!巴西透视挂... 玩家必看秘籍透视挂!巴西透视挂AI脚本,巴西多功能果然真的是有透视挂脚本1、进入游戏-大厅左侧-新手...
查到实测辅助外挂!易玩堂外挂A... 查到实测辅助外挂!易玩堂外挂AI教程,易玩堂多功能一贯真的是有外挂教程易玩堂辅助器是一种具有地方特色...