角度|导航时将参数传递给多个组件

时间:2019-04-04 14:21:11

标签: angular components parameter-passing router

我的应用程序中具有以下结构:

<div class="container">
    <top-navbar></top-navbar>
    <router-outlet></router-outlet>
    <navbar></navbar>
</div>

所以,我有TopNavbarComponent,路由器出口和NavbarComponent。

然后创建HomeComponent和AboutComponent。

假设我要像这样从Home导航到About:

路径定义:

{ path: 'about/:parameter', component: AboutComponent },

在HomeComponent中,我这样做:

this.route.navigate(['/about', 'a parameter'])

我的问题是:如何将参数传递给TopNavbarComponent? 这样我就可以得到它:

this.activated_route.snapshot.params['parameter']

来自TopNavbarComponent

有什么办法吗,或者我应该采用另一种方法?

  

解决方案可以满足我的要求,但是如果有人像我一样有答案   提议欢迎

1 个答案:

答案 0 :(得分:0)

使用查询参数

this.router.navigate(['/about'], { queryParams: { page: pageNum } });
//will give host-address/about?page=2

this.router.navigate(['/about', { id: aboutId, foo: 'foo' }]);
 // will give host-address/about;id=15;foo=foo