クラスの作成にはClass.jsを使用しています。
コールバック関数から呼び出されたときに、メソッド内で正しいコンテキストを取得できません
私のコードは
WordCloud = MyClass.extend({
init: function(data) {
var me = this;
(......).on("onComplete", this.draw);
},
show: function(word) {
alert(word)
},
draw : function(words){
console.debug(this); // prints element that triggred `onComplete` action
console.debug(words); // "Hi"
console.debug(me); // me is not defined
me.show(words) // Need to call this method
}
});
問題はdraw
、アクションが完了したときにメソッドが起動されることですが、内部のdraw
メソッドthis
は実際のclass
インスタンスではなく、コールバック アクションをトリガーした要素です。
this.draw
これはコールバック関数であり、パラメーターが 1 つしかないため、呼び出し中に追加の引数を渡すことはできませんonComplete
。
show
からメソッドを呼び出すにはどうすればよいdraw
ですか?