2017-03-15 6 views
1

Meine Strecken sind definiert als bekommen:Wie Auslass params von ActivatedRoute (Angular2)

path: 'geooperations', 
    component: GeoMetricsComponent, 
    children: [ 
     { path: ':idgeooperationmetrictype', component: DetailGeoMetricTypeComponent, outlet: 'geo' }, 
     { path: ':idgeooperationmetrictype/edit', component: DetailGeoMetricTypeComponent, outlet: 'geo' }, 
     { path: '/new', component: DetailGeoMetricTypeComponent, outlet: 'geo' } 
    ] 

Beispiel: URL: geooperations/(geo: c56da64c-0ef5-4894-83ee-043818b44e14)

outlet : 'geo' 
idgeooperationmetrictype: 'c56da64c-0ef5-4894-83ee-043818b44e14' 

Wie kann ich den "igeooperationmetrictype" von der ActivatedRoute erhalten?

Antwort

0

Gelöst ist das Problem, indem sie die snapshot.params mit:

this.activatedRoute.snapshot.params.subscribe(params => {   
    console.log(params['idgeooperationmetrictype']); 
}); 
0

Sie müssen es in der Komponente „DetailGeoMetricTypeComponent“

ngOnInit() { 
    this.sub = this.route.params.subscribe(params => { 
     this.id = params['idgeooperationmetrictype']; 
    }); 
    } 

Oder setzen Sie Breakpoint mit Entwickler-Tools auf der params Linie zeichnen die Schlüssel zu sehen.

+0

Die erste Antwort funktioniert nicht. Allerdings kann ich den "igeooperationmetrictype" von this.activatedRoute.url._value [0] .path. Ich weiß nicht, ob das in Ordnung ist oder ob es eine andere Möglichkeit gibt, dies über Outlet Params zu tun. –

+0

'activatedRoute.snapshot.params' hat den Trick gemacht. –

Verwandte Themen