クラスの作成には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ですか?