Verwenden Sie Router-Parameter. Also, in Ihrer Router-Konfiguration, haben Sie den Router-Pfad zu Ihrer Komponente (wie "MyComponent") wie folgt;
routes: Routes = [ { path: 'mycomponent/:myParam', component: MyComponent} ]
.
Und übergeben Sie den tatsächlichen Wert an den Router in Ihrem Anker-Tag in HTML wie;
<a [routerLink]="['/mycomponent', paramValue]"> Link to MyComponent </a>
oder in Ihrem Stammkomponente, navigieren programmatisch MyComponent;
this.router.navigate(['/mycomponent', paramValue]);
Und in der Komponente (MyComponent), importieren Sie die ActivatedRoute von Winkel Router, der zu diesen beobachtbaren im ngOnInit Verfahren ein params beobachtbare und abonnieren bietet. So sollte Ihr MyComponent in etwa so aussehen;
import { Component, OnInit, OnDestroy } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'my-selector',
template: '<div>My Component - Param Value {{myParamValue}}</div> '
})
export class MyComponent implements OnInit, OnDestroy{
myParamValue: any;
private subscribe: any;
constructor(private route: ActivatedRoute){}
ngOnInit() {
this.subscribe= this.route.params.subscribe(params => {
this.myParamValue = params['myParam'];
});
}
ngOnDestroy() {
this.subscribe.unsubscribe();
}
}
Lesen Sie weiter here
können Sie Ihren Code teilen? Obwohl jemand bereits eine Antwort gegeben hat, wäre es hilfreicher, wenn Sie Ihren Code – brijmcq
zur Verfügung stellen könnten, was Sie denken lässt, dass es nicht funktioniert? –
können Sie sich hier auf meine andere Frage beziehen. Was ich will, ist, dass ich die Klasseneigenschaft an eine Kindkomponente binden möchte. https://stackoverflow.com/questions/44817467/angular-2-cant-bind-property-from-another-class?noredirect=1#comment76615953_44817467 –