JSFiddle - React, Tailwind, and code Playground

by jcreamer898

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.3/underscore-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout/2.2.1/knockout-min.js"></script>
<script src="https://raw.github.com/postaljs/postal.js/master/lib/postal.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-mockjax/1.5.1/jquery.mockjax.js"></script>

JavaScript

var BaseViewModel = function() {};
BaseViewModel.prototype.fetch = function( opts, callback ) {
    $.ajax( opts ).done( callback );
    return;
};

var ProductType = function( options ) {
    this.Id = ko.observable( options.id );
    this.Name = ko.observable( options.name );
};

_.extend( ProductType.prototype, new BaseViewModel );

_.extend( ProductType.prototype, {
    fetched: function( data ) {
        console.log( data );
    }
});

var type = new ProductType({
    id: 1,
    name: "Blinds"
});

type.fetch({
    url: "productType"
});

$.mockjax({
    url: "producttype",
    responseText: {
        id: 1,
        name: "Binds"
    }
});