2017-05-30 34 views
1

在我的Angular 2(final)应用程序中,我需要获取我从中导航的路由器名称。如何获取我从中导航的组件的路由名称?

例如:如果我从这个网址

'http://localhost:3000/#/home'浏览到'http://localhost:3000/#/about-us'

(即)从家里组件关于我们的组件。

现在,我的问题是如何获取组件的路由名称,简而言之如何从我从哪里获取路由名称。

在此先感谢。

+0

https://stackoverflow.com/a/33548895/6554634在这里你可以找到 –

+0

@Mr_Perfect我认为这会给当前的路线名称,但如何获得从我从哪里导航的路线名称。 – Manush

+0

我没有测试,但尝试在该答案中打印'val'。它会有当前和以前的路线,我认为 –

回答

0

您需要订阅父亲&子路由中的路由更改事件并保留currentUrl,以便在下次更改路由时使用它。

 

    previousUrl: string; 
    constructor(router: Router) { 
     router.events 
     .filter(event => event instanceof NavigationEnd) 
     .subscribe(e => { 
      this.previousUrl = e.url; 
     }); 
    } 

请参阅this answer & How to detect a route change in Angular 2?

相关问题