2016-06-18 14 views
0

無名関数自体を参照してください。は、私は、このオブジェクトを持っているキーのJavascript

Uncaught TypeError: this.fillForms is not a function 

fillFormsキーは無名関数なので、オブジェクトの中からどのように呼び出すことができますか?他の相対的な質問では、キーが文字列値を持っていて、私が次のように呼び出す場合、自分自身を参照する方法しか見つけませんでした:this.fillForms

+0

あなたは、コンストラクタの代わりに、ファクトリ関数を使用する必要があります。ただ、このような

。 – Redu

+2

[コールバック内の正しい\ 'this \' /コンテキストにアクセスするにはどうすればいいですか?](http://stackoverflow.com/questions/20279484/how-to-access-the-correct-this-context-inside -a-callback) – melpomene

答えて

2

thisは、コールバック内で$formModal要素を参照します。あなたがする必要があるのは、イベントリスナーが呼び出される前に変数にオブジェクトを参照するthisを保存し、コールバック内の変数を使用してオブジェクトにアクセスすることです。

handleOnShowFormModal : function() { 
    var _this = this 
    $formModal.on('show.bs.modal', function(event) { 
    _this.fillForms(data); 
    }); 

    return this; 
}, 
+0

あなたは大歓迎です。この問題を解決するには、オブジェクトthisをコールバックのものにバインドするなどの方法があります。しかし、これは最も簡単です。 –

+0

あなたが私に例を示すことができるかどうかを学ぶのはすばらしいことでしょう::) –

+0

あなたの質問に@ melpomeneのコメントのリンクをチェックしてください。受け入れられた回答には詳細な情報があります。 –

関連する問題