playing with backbone -- fullextend

extending Backbone with https://coderwall.com/p/xj81ua/a-better-way-of-extending-backbone-models-and-views

by Gerald Gillespie

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://backbonejs.org/backbone-min.js"></script>

JavaScript

var obj = { prop : 'value'};

_.extend( Backbone.Model, { fullExtendz :  function (protoProps, staticProps) {
       // Call default extend method
       var extended = B.Model.extend.call(this, protoProps, staticProps);
       // Add a usable super method for better inheritance
       extended.prototype._super = this.prototype;
       // Apply new or different events on top of the original
       if (protoProps.events) {
           for (var k in this.prototype.events) {
               if (!extended.prototype.events[k]) {
                   extended.prototype.events[k] = this.prototype.events[k];
               }
           }
       }
       return extended;
       }
       });
       
   // Backbone.View.
   
   
   
 Backbone.Model.extend(  Backbone.Model,   { fullExtends :  function (protoProps, staticProps) {
       // Call default extend method
       var extended = B.Model.extend.call(this, protoProps, staticProps);
       // Add a usable super method for better inheritance
       extended.prototype._super = this.prototype;
       // Apply new or different events on top of the original
       if (protoProps.events) {
           for (var k in this.prototype.events) {
               if (!extended.prototype.events[k]) {
                   extended.prototype.events[k] = this.prototype.events[k];
               }
           }
       }
       return extended;
       }
       });