我在继承我自己的Backbone.View。如果在父类(super class)的初始化函数中编写:
_.bindAll(this,'many','methods');
并指定要绑定(bind)到此上下文的方法,我可以通过以下方式从子类中调用super:
this.constructor.__super__.initialize.apply(this, arguments);
但是,如果在父类(super class)中,我将使用:
_.bindAll(this)
相反,当我从子类中调用super时,
this.constructor.__super__
未定义。为什么会这样?
最佳答案
为什么不简单地使用这个来调用 super :
(为了便于说明,我将分成几行,您可以在一行中进行通话)
var thisProto = Object.getPrototypeOf(thisInstance);
var superProto = Object.getPrototypeOf(thisProto);
superProto.superMethod.apply(thisInstance, [param1, param2]);
Reference: GetPrototypeOf