Backbone.js 主干视图覆盖父事件函数

Backbone.js 主干视图覆盖父事件函数,backbone.js,Backbone.js,是否可以覆盖子视图中的closeClick功能?单击.close时,仅运行子项的closeClick函数,而不是父项 var ParentView = Backbone.View.extend({ events:{ "click .close": "closeClick" }, closeClick: function(){ //do parent stuff } }); var ChildView = ParentView.extendable.extend({

是否可以覆盖子视图中的
closeClick
功能?单击
.close
时,仅运行子项的
closeClick
函数,而不是父项

var ParentView = Backbone.View.extend({
 events:{
    "click .close": "closeClick"
 },

 closeClick: function(){
    //do parent stuff
 }
});

var ChildView = ParentView.extendable.extend({
  events:{
    "click .close": "closeClick",
    //more child events
  },

  closeClick: function(){
     //only do child stuff not parent when .close is clicked
  }
});

您所写的内容将在正常主干
.extend
上正常工作。但是,我不知道这个奇怪的
可扩展的
语句是什么——这可能就是破坏它的原因

var ParentView = Backbone.View.extend({
 events: {
    "click .close": "closeClick"
 },

 closeClick: function(){
    //do parent stuff
 }
});

var ChildView = ParentView.extend({
  events: function() {
    var parentEvents = _.result(ParentView.prototype, 'events');
    return _.extend({
        'keyup input': 'someOtherChildEvent'
    }, parentEvents);
  },

  closeClick: function() {
     //only do child stuff not parent when .close is clicked
  }
});

我搜索并尝试了这个解决方案,但是没有工作,我试图编写return uu2;.extend({},ParentView.prototype.events,{'click':'onclickChild'});在子视图中,它不能重写父closeClick函数,似乎它只能扩展更多事件。子视图中的函数名是什么,只是子函数可以重写父函数。如子函数名为“onclickChild”,一次。单击关闭,运行onclickChild而不是父函数“closeClick”,谢谢!从parentview继承的名为“closeClick”的函数被childView覆盖。所以我想childView“closeClick”应该会被调用。只要查看$el的childView,如果它是指带有类“close”的儿童控件,您好,谢谢您的回答。我想知道我可以在ChildView中绑定“click.close”:“childCloseClick”吗?类似于return{.extend({“click.close”:“childCloseClick”,'keyup input':'someOtherChildEvent'},parentEvents);Np,如果您使用不同的方法名称在那里重复
click.close
,它将覆盖父方法名称,因此它将调用
childCloseClick
,而不是在子视图中调用
closeClick