Ionic Angular 路由器不知道URL

g6baxovj  于 2022-12-16  发布在  Ionic
关注(0)|答案(2)|浏览(168)

我想做一些逻辑与url作为一个参数,当我的应用程序加载。我有一个Ionic 5项目,在我的app.component.ts文件中,我有以下代码:

export class AppComponent {
  constructor(router: Router) {
    console.log(router.url);
  }
}

但在我的控制台中,它记录“/”,而不是例如“/login”
这应该怎么做才合适呢?非常感谢!!!

ej83mcc0

ej83mcc01#

class MyComponent {
  constructor(route: ActivatedRoute) {
    const url: string = route.snapshot.url.join('');
  }

应该可以的万一你只是想获取信息。

sqxo8psd

sqxo8psd2#

您可以订阅路由器事件以在导航到页面时获取url。

import { NavigationEnd, Router } from '@angular/router';

export class AppComponent {   

  constructor(router: Router) {
    
  const routerSubscription = this.router.events
   .pipe(
     filter(event => event instanceof NavigationEnd)
    )
   .subscribe((event: NavigationEnd) => {
      const url = event.url;
    
      if (url != '/') {

        // To stop listen navigations
        routerSubscription.unsubscribe();

        // Your code
      }

    });
  }
}

相关问题