Angular 2 al pasar la identificación en la URL que muestra? ComplntId = TS0000031

tener un escenario, si el usuario ingresa un número y lo envía, debe navegar a esa identificación y mostrar los detalles.

cuando navego url, muestra algo como esto

complastatus / TS0000031? complntId = TS0000031

Código de vista detallada:

export class ComplaintDetailComponent implements OnInit {
    id:number;
    private sub:any;
    complntId : any;
    constructor(private ComponentService:ComplaintService,private route:ActivatedRoute){

    }
    ngOnInit() {

   this.sub= this.route.params.subscribe((params:Params)=>{
        this.ComponentService.getCompliants(params['complntId'])
    });
    console.log(this.sub);

  }

el usuario ingresa el código de identificación:

export class ComplaintStatusComponent {

    constructor(private router:Router){}
getComplaintDetails(complntId){
  this.router.navigate(['/complaintstatus', complntId]);
}  

}

y una pregunta más, ¿cómo puedo enviar la identificación de usuario a otro componente?

y código de servicio:

export class ComplaintService{
    private _url:string ="http://192.168.0.106:8000/app/complaint/complaintstatus"
    constructor(private _http:Http){}
    getCompliants(complntId){
        return this._http.get(this._url + '/' + complntId).map((response:Response)=>response.json());

    }
}

Módulo de enrutamiento:

const routes: Routes = [
    {path:'complaintregistration',component:ComplaintRegistartionComponent},
    {path:'complaintstatus',component:ComplaintStatusComponent},
    {path:'complaintstatus/:complntId',component:ComplaintDetailComponent}
];

Respuestas a la pregunta(0)

Su respuesta a la pregunta