作为一名长期的 C++/C# 开发人员,我发现自己将很多 JS 代码移动到“类”中,以便将函数和数据组合在一起。尽管这些类处理事件,但我发现自己必须编写“存根”处理程序,这些处理程序仅用于将调用路由到类方法中以提供正确的 this 上下文。所以我正在做这样的事情:
var Manager = {
foo: 'x',
bar: 1,
onClickStub: function(evt) {
// 'this' refers to HTMLElement event source
Manager.onClick(evt);
},
onClick: function(evt) {
// 'this' now refers to Manager.
// real work goes here.
}
}
这是做事的正常方式还是有更好的方法来构建我的事件处理程序同时保持我的班级组织?