SORU
22 ŞUBAT 2012, ÇARŞAMBA


Omurga Görünümü: üst olayları uzatmak Miras

Omurga belgelerine durumları:

Olayları özelliği de olaylar bir karma, daha kolay olayları programlı olarak tanımlamak, hem de bunları devralmak üst görünümlerinden yapmak döndüren bir işlev olarak tanımlanabilir.

Nasıl bir ebeveyn bakışı olayları devralmak ve bunları uzatmak mı?

Üst Görünüm

var ParentView = Backbone.View.extend({
   events: {
      'click': 'onclick'
   }
});

Çocuk Görüntüleyin

var ChildView = ParentView.extend({
   events: function(){
      ????
   }
});

CEVAP
22 ŞUBAT 2012, ÇARŞAMBA


Bir yolu vardır:

var ChildView = ParentView.extend({
   events: function(){
      return _.extend({},ParentView.prototype.events,{
          'click' : 'onclickChild'
      });
   }
});

Başka olacaktır:

var ParentView = Backbone.View.extend({
   originalEvents: {
      'click': 'onclick'
   },
   //Override this event hash in
   //a child view
   additionalEvents: {
   },
   events : function() {
      return _.extend({},this.originalEvents,this.additionalEvents);
   }
});

var ChildView = ParentView.extend({
   additionalEvents: {
      'click' : ' onclickChild'
   }
});

Olaylar olup olmadığını kontrol etmektir fonksiyon ya da nesne

var ChildView = ParentView.extend({
   events: function(){
      var parentEvents = ParentView.prototype.events;
      if(_.isFunction(parentEvents)){
          parentEvents = parentEvents();
      }
      return _.extend({},parentEvents,{
          'click' : 'onclickChild'
      });
   }
});

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Easy Learn Tutorial

    Easy Learn T

    10 Kasım 2012
  • FUzzyBUnnyBOoties

    FUzzyBUnnyBO

    3 EKİM 2007
  • SelmerSaxMan

    SelmerSaxMan

    24 HAZİRAN 2006