2017-01-12 11 views
0

私はで文字列を提供する関数を持つコンポーネントdataservice.ts()持っている:angular2の別のコンポーネントで関数のデータを表示する方法は?

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); 
    } 

を、私は別のコンポーネントでcomplUrlを照会する - のOnInit

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

何で - myComponent.ts間違っているの?私はそれがシンプルだと思うが、私はそれを把握することはできません。あなたのエラーメッセージが表示され、あなたにconsole.log、内thisが欠落している

+0

'' 'ここで' 'something:string =" something; 'あなたは他のコンポーネントやプロバイダにこの関数を持っていますか? –

+0

ありがとう! mhm。はい私が言ったように:私はコンポーネントdataservice.tsを持っていると私は、関数buildUrl()を実行するコンポーネント – edamerau

+0

あなたは、他のコンポーネントhtmlのdataserviceコンポーネントを使用している? –

答えて

1

complUrl is not defined、それがあるべきよう:

console.log(this.complUrl); 

そして、ちょうどコメントとして、あなたは、somethingで「本物」の変数を交換しました右?そうでなければ、2つの同じ変数があります。

+0

@edamerau、この回答はあなたを助けましたか?もしそうなら、この答えを親切に受け入れることができますか? :) – Alex

関連する問題