2017-04-17 8 views
0

나는 그래서 대시 보드/1 페이지는 제 1 링크 즉, 클릭 할 때 내가Angular2 : 구성 요소가 동일한 경우 라우터 콘센트 페이지를 업데이트하지

{ path: 'dashboard/:id', component: DashboardComponent} 

다음과 같이 라우터 콘센트를 구성하는 응용 프로그램을 개발하고 업데이트되었습니다. 두 번째 링크 대시 보드/2를 클릭하면 페이지 URL이 업데이트되지만보기가 업데이트되지 않습니다. 하지만 새로 고침을하면 업데이트가 진행됩니다.

내 대시 성분보기

<div #coloneanchor></div> 
    </div> 

<div class="col-md-6"> 
<div #coltwoanchor></div> 
</div> 

내 Dashboardcomponent.ts

아래와 같다

@ViewChild ('coloneanchor'{읽어 ViewContainerRef}) coloneanchor : 모두; @ViewChild ('coltwoanchor', {read : ViewContainerRef}) coltwoanchor : any;

this.route.params.subscribe(param => { 
     this.id = param["id"]; 
     this.userService.getGadgets(this.id).subscribe(gadgets => { 

switch(gadget) 

case gadget1: 
case gadget2: 

여기 내 견해에는 두 개의 앵커 포인트가 생성됩니다. ID를 얻으면 API로 전달하여 가제트와 데이터 및 열 위치를 가져옵니다. 가제트를 반복하여 앵커 포인트에 추가합니다.

+0

DashboardComponent는 어떻게 보이나요? –

+0

ID를 사용하고 그리드와 차트를로드하기 위해 몇 가지 API 호출을합니다. DashboardComponent가 Reuse를 구현해야한다는 것을 알았지 만, 더 이상 존재하지 않는다고 생각합니다. https://github.com/angular/angular/issues/6910 – indra257

답변

1

, 당신의 DashboardComponent 아래이 도움이

constructor(private route: ActivatedRoute){} 
    ngOnInit(){ 
    this.route.params.subscribe(param => { 
     let id = param["id"]; 
     /// reload grid and charts...   
    }) 
    } 

희망을보십시오!

+0

작동합니다. 감사. – indra257

+0

그리드와 차트가 이전 뷰에 추가됩니다. 이전보기를 추가하기 전에 제거 할 수있는 방법이 있습니까? – indra257

+0

코드가 나타날 때까지는 도움이되지 않습니다 .. 어떻게 그리드를 추가합니까? –