3 concepts in which KnockoutJS is build upon is:
– Through observables dom elements and ViewModel exchange information
– Bindings between UI and ViewModel
– Templating web applications
To make it observable declare as:
this.property = ko.observable(‘value’);
<!DOCTYPE html>
<head>
<title>KnockoutJS - Observables</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js"></script>
</head>
<body>
<!-- This is input box, used data-bind attribute to bind name to ViewModel -->
<p>Put your name here: <input data-bind="value: name" /></p>
<!-- To print value use data-bind type as text -->
<p>Hi <strong data-bind="text: name"></strong> How are you?</p>
<script>
function AppViewModel() {
<!-- ko.observable keeps an eye on name variable, any modification in data it change the respective places with changed value -->
this.name = ko.observable("John!");
}
ko.applyBindings(new AppViewModel());
</script>
</body>
</html> Computed Observable is a function which is dependent on one or more Observables. For any Observables change it will automatically update.
Syntax:
this.variable = ko.computed(function(){
...
},this); Lets see the example below:
<!DOCTYPE html>
<head>
<title>KnockoutJS - Observables</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js"></script>
</head>
<body>
<p>1st no: <input data-bind="value: a" /></p>
<p>2nd no: <input data-bind="value: b"/></p>
<p>Multiply: <span data-bind="text: total"></span></p>
<script>
function AppViewModel() {
this.a = ko.observable(5);
this.b = ko.observable(3);
this.total = ko.computed(function() {
return this.a() * this.b();
}, this);
}
ko.applyBindings(new AppViewModel());
</script>
</body>
</html> Content marketing has a hidden tax. It's not the writing itself, it's everything that happens…
Most marketing teams aren't failing because they lack data. They're failing because they can't act…
Email marketing continues to be one of the most effective ways for businesses to communicate,…
Xerox first introduced it around the mid-1970s. The need came up because the management activities…
Investing in the forex market may look to be a dangerous game. With some worthwhile…
The coronavirus outbreak has drastically changed the way we live our lives. Yes, that's absolutely…