Làm cách nào để lấy RouteParams từ một thành phần chính?
App.ts
:
@Component({
...
})
@RouteConfig([
{path: '/', component: HomeComponent, as: 'Home'},
{path: '/:username/...', component: ParentComponent, as: 'Parent'}
])
export class HomeComponent {
...
}
Và sau đó, trong ParentComponent
, tôi có thể dễ dàng lấy thông số tên người dùng của mình và đặt các tuyến con.
Parent.ts
:
@Component({
...
})
@RouteConfig([
{ path: '/child-1', component: ChildOneComponent, as: 'ChildOne' },
{ path: '/child-2', component: ChildTwoComponent, as: 'ChildTwo' }
])
export class ParentComponent {
public username: string;
constructor(
public params: RouteParams
) {
this.username = params.get('username');
}
...
}
Nhưng sau đó, làm thế nào tôi có thể lấy cùng một tham số 'tên người dùng' này trong các thành phần con đó? Làm thủ thuật tương tự như trên, không làm điều đó. Vì những thông số đó được xác định tại ProfileComponent hay gì đó ??
@Component({
...
})
export class ChildOneComponent {
public username: string;
constructor(
public params: RouteParams
) {
this.username = params.get('username');
// returns null
}
...
}
<child-one-component [username]="username"> ...