2017-09-29 8 views
-1

でクロージャを使用する方法は、私が「名前 innerFnを見つけることができないとして、以下の私はエラーを取得していないことを試みたとき、私は角度4.は角4

に閉鎖するために関数内の関数を作成したいあり「

outerFn(){ 
    let a = "hello"; 
    innerFn(){ 
    console.log(a); 
    } 
} 

誰かがこの上で私を助けることができますか?

+2

'function innerFn(){..'あなたは 'outerFn'の外でそれにアクセスしようとしていますか? – echonax

+1

ありがとう@echonax。その働き。 –

+0

いいえ私は 'outerFn'の外でそれにアクセスしようとしていません –

答えて

2

あなたはfunctionキーワードを使用する必要があります。

outerFn(){ 
    let a = "hello"; 

    var that = this; // use that to access the component 
    function innerFn(){ 
    console.log(a); 
    } 

    innerFn(); // will log a 
} 

警告:この関数内thisを使用しようとは、それが原因で閉鎖のコンポーネントを参照しています。

+0

関数内で 'this'のコンポーネントにアクセスする方法はありますか? @echonax –

+1

@RajarajanKamban私は答えを更新しました。 'that'変数を使うことができます。関数の外部で 'this'を割り当てていることに注目してください – echonax