2017-01-12 1 views
0

Ich habe eine Komponente dataservice.ts mit einer Funktion() bekam, die einen String durch bieten wird:Wie zeigt man Daten aus der Funktion in einer anderen Komponente in angular2 an?

httpString: string = "https://"; 
    complUrl: string = ""; 
    something: string = "something"; 
    something: string = ".something"; 

    constructor(private http: Http) { 

    } 

    buildUrl(): void { 
     let pId = "015111810666"; 
     let dId = "i21wcwg2hssv2t9";   

     this.complUrl = this.httpString + this.something + this.something + pId + dId; 
     console.log(complUrl); 
    } 

und ich will complUrl in einer anderen Komponente abfragen - myComponent.ts - von OnInit

constructor(private myDataService: MyDataService) { 
} 
ngOnInit() { 
this.myDataService.buildUrl(); 
} 

was mache ich falsch? Ich denke, es ist einfach, aber ich kann es nicht herausfinden.

+0

verpasst Sie eine '„'' hier etwas: string =“etwas,' und Sie haben die Funktion in einer anderen Komponente oder Anbieter? –

+0

danke! Mhm. Ja, wie ich sagte: Ich habe eine Komponente dataservice.ts und eine Komponente, wo ich die Funktion buildUrl() – edamerau

+0

ausführen möchten verwenden Sie die Dataservice-Komponente in der anderen Komponente HTML? –

Antwort

1

Sie fehlen this in Ihrem console.log, die Meldung Ihre Fehler verursacht: complUrl is not defined, so soll es sein:

console.log(this.complUrl); 

Und wie ein Kommentar haben Sie ersetzt „echte“ Variablen mit something, Recht? Ansonsten haben Sie zwei identische Variablen.

+0

@edamerau, hat diese Antwort Ihnen geholfen? Wenn ja, könntest du diese Antwort freundlich annehmen? :) – Alex

Verwandte Themen