JSFiddle - React, Tailwind, and code Playground

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/knockout.mapping/2.3.5/knockout.mapping.js"></script>
<div data-bind="updateBinding: People.Records">
    
</div>

JavaScript

var data = new Array();

        data[0] = {
            "Records": [{
                "Name": "Ludwig van Beethoven"
            }, {
                "Name": "Han Solo"
            }]
        };

        ko.bindingHandlers.updateBinding = {
            update: function (element, valueAccessor, allBindingsAccessor) {                
                alert("!");
            }
        };

        var mapping = {
            'Records': {
                create: function (options) {
                    return new FamousPersonViewModel(options.data);
                }
            }
        };

        function FamousPersonViewModel(data) {
            this.Name = ko.observable(data.Name);
        }

        function PeopleListViewModel() {
            this.Records = ko.observableArray([]);
        }

        function MainViewModel() {
            var self = this;

            self.People = ko.observable(new PeopleListViewModel());
        }

        var viewModel = new MainViewModel();

        // update binding fires once
        ko.applyBindings(viewModel);

        // update binding fires twice
        ko.mapping.fromJS(data[0], mapping, viewModel.People);