JSFiddle - React, Tailwind, and code Playground

by gurkavcu

HTML

<script src="http://knockoutjs.com/js/knockout-2.1.0.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css">
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/black-tie/jquery-ui.css">
<script src="https://raw.github.com/SteveSanderson/knockout.mapping/master/build/output/knockout.mapping-latest.js"></script>

CoffeeScript

class ViewModel
  constructor: ->
     console.log("HEY")
    $.ajax({url: '#.json', type: 'GET', dataType: 'json'})
    .done @buildModel

  buildModel: (data) =>
    @model = ko.mapping.fromJS(data)
    @model.update = =>
      delete @model.update
      jsonForm = ko.mapping.toJSON(@model)
      $.ajax({url: '#.json', data: jsonForm, type: 'PUT', contentType:"application/json; charset=utf-8", dataType: 'json'})
      .done @buildModel

    ko.applyBindings(@model)    
  

###################################################################

class FormViewModel extends ViewModel
  buildModel: =>
    super()

$(document).bind 'pageinit', =>
  @form = new ViewModel