2017-08-31 13 views
1

私は2つの関数を持っていますが、他の関数の戻り値を取得しようとしていますが、戻り値は常に未定義です。イオン2で返された値を取得するには?

これは値を返すためのコードです。

export class HomePage { 

    variables={ 
    a:1, 
    b:2, 
    c:3, 
    } 

    constructor(public navCtrl: NavController) { 
    this.function1(); 
    } 

    function1(){ 
    if(function2()){ 
     alert("true"); 
    }else{ 
     alert("false"); 
    } 
    } 

    function2(){ 
    if(this.variables.a + this.variables.b >= this.variables.c){ 
     return true; 
    }else{ 
     return false; 
    } 
    } 
} 
+0

は、コンポーネントの一部ですか?コンポーネントコード全体を表示してください。 – sebaferreras

+1

@sebaferreras、私は完全なコードで私の質問の編集を保存しました –

+0

ありがとう、答えが問題を解決すれば教えてください:) – sebaferreras

答えて

1

あなたがコンポーネントの一部として両方の機能を宣言しているので、あなたがそれらを実行するためにthisキーワードを使用する必要があります。

function1(){ 
    if(this.function2()){ // <--- like this! 
     alert("true"); 
    }else{ 
     alert("false"); 
    } 
    } 
+0

ありがとう、はい、エラーが解決したが、警告は常に "偽"を表示します。私がconsole.log(this.function2())をチェックしたとき。 。 –

+0

私はこれと全く同じコード(機能のために 'this'キーワードを使用しています)を使って[このデモplunker](http://plnkr.co/edit/dEBXpx7z0Na1KpetjubY?p=preview)を作成しました。正しく動作しているようです。あなたはそれを見てみることができますか? – sebaferreras

+1

すみません。私は私のコードを編集するときに間違いを犯しました..その仕事の罰金..あまりにも多くのUに感謝します –

関連する問題