Site icon MageComp Blog

Magento 2: How Knockout-es5 Library Work

How Knockout-es5 Library Work in M2

Hello Magento Friends,

We are back with “How-To” Magento Tutorials. Today’s topic is Magento 2: How Knockout-es5 Library Work.

Knockout-es5 is a plugin by Steve Sanderson to simplify the syntax. The knockout-es5 plugin adds support for ECMAScript 5 properties. With knockout-es5 you can use simpler syntax with your code and bindings. Knockout-ES5 works in ECMAScript 5-capable browsers.

Magento 2 provides a knockout js library to make our variable observable. Along with that one advanced functionality is given like knockout-es5, using it we can make all variables observable in bulk using the tracking method.

Observable is helpful to fulfill MVVM (Model-View-View-Model) architecture.

How Knockout-es5 Library Work in Magento 2

Let us take an example,

ko.observable(varMyName)

Further, to access the value, it is necessary to call it like a function: varMyName()

UiElement = requirejs('uiElement');

//define a new constructor function based on uiElement
OurClass = UiElement.extend({
    defaults:{
        tracks:{
            varMyName: true,
            varTempMyName: true
        }
    }
});    

//create a new object
ourViewModel = new OurClass;

//set a default value
ourViewModel.varMyName = 'a default value';

//setup a callback
ourViewModel.on('varMyName', function(value){
    console.log("Another callback: " + value);
});

//set the value (notice the normal javascript assignment)
//and you should see the "Another callback" output
ourViewModel. varMyName = 'a new value';

So here varMyName automatically works like observable

Conclusion:

Hence, this was all about How Knockout-es5 Library Work in Magento 2. For any queries or help feel comfortable reaching me via the comment part. Do not forget to share the article. Stay informed!

Happy Coding

Exit mobile version