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

  • Excel Video Tutorials

    Excel Video

    6 Aralık 2012
  • 趣味そうこ♪

    趣味そう

    3 Mart 2010
  • RyanXLT

    RyanXLT

    22 Ocak 2011