늦게까지 각도 라우터에 많은 변경이있었습니다.이 문제를 해결하는 방법을 모릅니다.상위 구성 요소에서 하위 구성 요소로 param 가져 오기
내가 주소 표시 줄에 "이벤트 ID"라는 내 부모 요소에 PARAM이 : 그것은 값이다이 경우
http://localhost:4200/event/1
내가 라우팅에 선언 방법은 다음과 1.
입니다입니다 구성 요소 :
:{ path: 'event/:eventId', loadChildren: './event/event.module#EventModule', canActivate: [AuthGuard] },
그래서 나는 길 아래 라인 하위 구성 요소가
내 구매 계획 구성 요소에서 어떻게 이벤트 ID를 얻을 수 있습니까?
나는 시도했다 :
import { ActivatedRoute } from '@angular/router';
export class PurchasePlansComponent implements OnInit {
eventId: number;
constructor(private activatedRoute: ActivatedRoute) {
this.subscription = activatedRoute.parent.params.subscribe(
(param: any) => {
this.eventId = param['eventId'];
}
);
}
ngOnInit() {
alert(this.eventId);
}
}
하지만이 단지 작품을 나는이 수준에있어 경우 :
http://localhost:4200/event/1/event-home
하지만이 수준에있어 경우에 작동하지 않습니다 :
http://localhost:4200/event/1/event-travel-agents/purchase-plans
이 같은 시도 (순간에 테스트 할 수 있지만, 당신에게 아이디어를 제공 할 수 없습니다) :'activatedRoute.snapshot.parent.params를 [ 'eventId']'? –
[공유 서비스] (https://rahulrsingh09.github.io/AngularConcepts/faq)가 아니라면 동일한 구성 요소를 다루는 것처럼 작동해야한다고 생각하면 오류가 발생하지만 작동해야한다고 생각합니다. . –
@deezg 스냅 샷을 사용하면 매개 변수가 동적으로 변경되는 시나리오에서 작동하지 않을 수 있습니다. 변경 사항을 구독해야합니다. –