In this tutorial you will get the basic knowledge of KnockoutJS and how to use on programming.
Basically it is a JavaScript library based on MVVM pattern i.e. Model-View-View-Model by which developer build rich and responsive websites.
It separates the application model, view and view model.
It supports most of browsers i.e. Firefox 3.5+, IE 6+, Opera, Chrome, Safari.
Steve Sanderson, a Microsoft employee on July5, 2010 developed KnockoutJS and maintained as a open source project.
Abbreviation for KnockoutJS is KO.
How to use:
Download production build of Knockout.js from:
http://knockoutjs.com/downloads/index.html
Read Also: KnockoutJS MVVM Application Framework
Now paste it in your webpage head tag as:
<script type=’text/javascript’ src=’knockout-3.3.0.js’></script>
or you can use KnockoutJS library from CDN:
<script src=”http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js” type=”text/javascript”></script>
Lets look a simple example:
<!DOCTYPE html>
<head>
<title>About KnockoutJS</title>
<!-- We have added the KnockoutJS library-->
<script src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js" type="text/javascript"></script>
</head>
<body>
<!-- two input boxes First Name and Last Name initialized in model with "John" and "Doe" -->
<p>First Name: <input data-bind="value: firstName" /></p>
<p>Last Name: <input data-bind="value: lastName" /></p>
<!-- get the value from model observable from input element -->
<p>First Name: <strong data-bind="text: firstName">Hi</strong></p>
<p>Second Name: <strong data-bind="text: lastName">There</strong></p>
<p>Full Name: <strong data-bind="text: fullName"></strong></p>
<script>
function AppViewModel() {
<!-- firstName and lastName refers to ViewModel variable. -->
<!-- ko.observable keeps an eye on value changes for updating ViewModel data -->
this.firstName = ko.observable("John");
this.lastName = ko.observable("Doe");
<!-- this is computed function in viewmodel which concat two variable -->
this.fullName = ko.computed(function() {
return this.firstName() + " " + this.lastName();
}, this);
}
ko.applyBindings(new AppViewModel());
</script>
</body>
</html> The coronavirus outbreak has drastically changed the way we live our lives. Yes, that's absolutely…
Sales and marketing teams help attract, convert, and retain customers to ensure an organization’s long-term…
Are you an owner of a small business who’s trying to come up with ways…
Introduction When patients bring me their lab reports, the confusion is almost always the same.…
Are you excited about remodeling your house after a long time? Perhaps if you're planning…
The practice of yoga teaches us to be present, patient and mindful of our decisions.…