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相关的所有订阅。

相关内容

热门资讯

来一盘!wejoker辅助脚本... 来一盘!wejoker辅助脚本(辅助挂)切实真的有挂(有挂工具辅助教程)1、游戏颠覆性的策略玩法,独...
玩家攻略推荐!wepoker究... 玩家攻略推荐!wepoker究竟有没有透视(辅助挂)都是真的有挂(有挂详细辅助教程)透视方法中分为三...
一起来讨论!约局吧辅助器(辅助... 一起来讨论!约局吧辅助器(辅助挂)原来真的有挂(证实有挂辅助教程)1、模拟器是什么优化,俱乐部是真的...
一起来讨论!xpoker辅助怎... 一起来讨论!xpoker辅助怎么用(辅助挂)其实是有挂(有挂方针辅助技巧)透视方法中分为三种模型:靠...
安装程序教程!wepoker底... 安装程序教程!wepoker底牌透视脚本(辅助挂)竟然存在有挂(有挂解密辅助app)1、免费辅助多个...
一分钟了解!德普之星怎么设置埋... 一分钟了解!德普之星怎么设置埋牌(辅助挂)真是存在有挂(有挂规律辅助插件)1、辅助软件下载优化,底牌...
推荐十款!sohoo开挂辅助(... 推荐十款!sohoo开挂辅助(辅助挂)原来是真的有挂(有人有挂辅助软件);1、公共底牌简单,透视插件...
玩家爆料!德州局透视脚本(辅助... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这款游戏中打...
重大推荐!hhpoker的辅助... 重大推荐!hhpoker的辅助是真的吗(辅助挂)确实存在有挂(存在有挂辅助软件)1、在插件功能辅助器...
一分钟快速了解!hhpoker... 一分钟快速了解!hhpoker辅助(辅助挂)好像是真的有挂(真的有挂辅助app)1、公共底牌简单,透...