JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://knockoutjs.com/downloads/knockout-3.2.0.debug.js"></script>
<foo-component params="onLoad: fooLoadedCallback"></foo-component>

JavaScript

ko.components.register('foo-component', {
    viewModel: function(params) {
        return {
            status: ko.observable('Constructed'),
            componentLoaded: function () {
                if (params.onLoad) {
                    params.onLoad(this);
                }
            }
        };
    },
    template: '<span data-bind="text: status">Template</span> <span data-bind="template: { afterRender: componentLoaded() }"></span>',
});

var viewModel = {
    fooLoadedCallback: function(viewModel) {
        viewModel.status('Rendered!');
    },
};

ko.applyBindings(viewModel);