Angular的routerLink只会触发一次ngOnInit
创始人
2024-10-24 09:31:14
0

在Angular中,routerLink只会触发一次ngOnInit的问题可以通过以下解决方法解决:

  1. 使用routerLinkActive指令:routerLinkActive可以在当前路由激活时添加一个CSS类,我们可以利用这个特性来触发组件的变化。在组件的ngOnInit方法中,我们可以监听routerLinkActive指令的isActive属性,并根据isActive的值来执行相应的逻辑。
import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-example',
  template: `
    Link
  `,
})
export class ExampleComponent implements OnInit {
  ngOnInit() {
    this.rla.isActive.subscribe((value: boolean) => {
      if (value) {
        // 执行相应的逻辑
      }
    });
  }
}
  1. 使用路由守卫:可以在路由守卫中监听路由变化,并在路由变化时执行相应的逻辑。
import { Component, OnInit } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';

@Component({
  selector: 'app-example',
  template: `
    Link
  `,
})
export class ExampleComponent implements OnInit {
  constructor(private router: Router) {}

  ngOnInit() {
    this.router.events.subscribe((event) => {
      if (event instanceof NavigationEnd && event.url === '/example') {
        // 执行相应的逻辑
      }
    });
  }
}

这两种解决方法都可以在routerLink被点击时执行相应的逻辑,而不仅限于ngOnInit方法。

相关内容

热门资讯

透视辅助!epoker透视(透... 透视辅助!epoker透视(透视)约局吧开挂,教程举措(新版有挂)-哔哩哔哩该软件可以轻松地帮助玩家...
透视解迷!wepoker能不能... 您好,wepoker有透视底牌吗这款游戏可以开挂的,确实是有挂的,需要了解加去威信【48527505...
透视必备!wepoker有透视... 透视必备!wepoker有透视底牌吗(透视)wepoker破解器激活码,教程讲义(详细教程)-哔哩哔...
透视关于!pokemmo内置修... 透视关于!pokemmo内置修改器(透视)pokemmo修改器手机版,教程方针(有挂详细)-哔哩哔哩...
透视详细!hhpoker透视码... 透视详细!hhpoker透视码(透视)wepoker辅助器是真的吗,教程步骤(的确有挂)-哔哩哔哩1...
透视科普!wepoker轻量版... 透视科普!wepoker轻量版透视方法(透视)红龙poker透视指令,教程窍要(有挂解惑)-哔哩哔哩...
透视详细!wepoker好友局... 透视详细!wepoker好友局透视(透视)德普之星怎么开辅助,教程资料(确实有挂)-哔哩哔哩1、透视...
透视普及!佛手在线大菠萝智能辅... 透视普及!佛手在线大菠萝智能辅助器(透视)哈糖大菠萝有挂吗,教程窍要(有人有挂)-哔哩哔哩亲,关键说...
透视教你!wpk系统是否存在透... 透视教你!wpk系统是否存在透视行为(透视)wepoker分析,教程机巧(有挂头条)-哔哩哔哩1、这...
透视教你!aapoker插件(... 透视教你!aapoker插件(透视)we-poker辅助,教程手筋(有挂详情)-哔哩哔哩1、we-p...