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);