mapping plugin create callback

http://stackoverflow.com/questions/8975951/how-to-add-dependentobservable-to-each-item-in-observable-array

by rniemeyer

HTML

<script src="http://knockoutjs.com/downloads/knockout-2.0.0.debug.js"></script>
<script src="https://rawgithub.com/SteveSanderson/knockout.mapping/master/build/output/knockout.mapping-latest.debug.js"></script>
<ul data-bind="foreach: list">
    <li data-bind="text: fullName"></li>
</ul>

JavaScript

var data = {
    list: [ {first: "Bob", last: "Smith"}, 
            {first: "Ted", last: "Jones"}
          ]
};

var options = {
    list: {
        create: function(options) {
           var result = ko.mapping.fromJS(options.data);
            result.fullName = ko.computed(function() {
                return this.first() + " " + this.last();
            }, result);
           return result;
        }  
    }
}

var viewModel = ko.mapping.fromJS(data, options);

ko.applyBindings(viewModel);