JSFiddle - React, Tailwind, and code Playground

by Znarkus

JavaScript

/**
* Model
**/
function Model() {}

Model.find = function () {
    console.log('Finding..');
};

Model.extend = function (construct) {
    /*var c = function () {
        console.log(name + ' constructor', arguments);
        Model.apply(this, arguments);
    };*/
    //eval('function ' + name + '() { Model.apply(this, arguments); } var c = ' + name + ';');

    construct.prototype = Object.create(Model.prototype);
    //User.prototype = new Model();
    //User.prototype.constructor = Model;

    Object.keys(Model).forEach(function (key) {
        if (typeof(Model[key]) == 'function') {
            construct[key] = Model[key]
        }
    });
        
    //return obj;
};

Model.prototype.hej = function () {
    console.log('Hej!');
};

/**
* User
**/
function User(data) {
    angular.extend(this, data);
}

Model.extend(User);

User.prototype.getAvatar = function (width, height) {
    return 'cdn.wb/avatar/' + width + 'x' + height + '/' + this.id + '.jpg';
};


/**
* App
**/
var u = new User({ id: 2 });

console.log(u);
//console.log(User);
console.log(u.getAvatar(150, 150));

User.find(1);