使用带有词法this
绑定的 ES6 箭头函数非常棒。
但是,我刚才在使用典型的 jQuery 点击绑定时遇到了一个问题:
class Game {
foo() {
self = this;
this._pads.on('click', function() {
if (self.go) { $(this).addClass('active'); }
});
}
}
改用箭头函数:
class Game {
foo() {
this._pads.on('click', () => {
if (this.go) { $(this).addClass('active'); }
});
}
}
然后$(this)
转换为 ES5 (self = this) 类型的闭包。
是一种让 Traceur 忽略“$(this)”进行词法绑定的方法吗?