JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://cloud.github.com/downloads/SteveSanderson/knockout/knockout-2.0.0.js"></script>
<script src="https://raw.github.com/SteveSanderson/knockout.mapping/master/build/output/knockout.mapping-latest.js"></script>
<!-- ko with: inner -->
<input type="text" data-bind="value: text1" /><br />
<input type="text" data-bind="value: text2" /><br />
<!-- /ko -->

<button data-bind="click: function(){ reset(createViewModel(), inner) }">Reset</button>

JavaScript

function reset(defaults, viewModel){            
    ko.mapping.fromJS(defaults, viewModel);
}

function createViewModel(){
    var self = {};
    
    self.text1 = 'foo';
    self.text2 = 'bar';
    
    return self;
}


var viewModel = {
    createViewModel: createViewModel,
    reset: reset,
    inner: ko.mapping.fromJS(createViewModel())
}

ko.applyBindings(viewModel);