Thank you for this... Started working on a Magento 2 framework that is using this on the frontend, instead of something like React which I was familiar with.
Thanks for this intro. I just got assigned a knockout task for my Agile story. Never worked with it before. Our legacy code uses knockout with type script as well ASP .
Drew, that's exactly what happend to me! I need to understand how Knockout.js works, and also how MVVM pattern works. So, I guess this series of videos will help me.
I still use KO because mostly I use Magento. I think the concept is more like Svelte, it use direct dom manipulation instead of virtual dom like react and vue
I started using knockout when I had a client that needed IE 6 support. I love how simple knockout is. Anybody can learn it in a week. I'm thinking it's time for us to go back to simpler paradigms.
I am also a Magento dev and it is great seeing that you are a guitarist I just bought a guitar yesterday and starting my lesson next week with a friend that already plays. Looking forward to it. Also I hope you ended up getting this knockout
It's amazing, I'm VueJS & ReactJS developers. But they cannot run in specific condition. Came here for knockout js that supported all browser with almost same feature like react, vue even angular!
Thank you for making this tutorial. we're using knockout in our project right now. but i have a question, when the count changes how did dogStatus know that it has to re-compute ?
Thank you for this video, I Love Knockout, I use Knockout usually but I need to understand.. Is there a routing system to manage menu items (for navigation) ? if yes or if you use your own system can you make a video for this ? Thank you very much
kirito kirigaya I have 4 videos about knockout so far on RUclips that cover my journey, at least. Let me know if there are certain areas that are tricky and I can record more 👍
Yes. If you expose a reference to it, like ‘window.vm = this’, you can then call the observables like vm.updateSomething() from anywhere. That’s just an example on the window level, but it can be handy to pass references to view models to other view models on creation so they can talk.
Which of the following describes Components in Knockout.js? (i) They are a powerful, clean way of organizing the UI code into self-contained, reusable chunks and can easily be packaged for reuse across projects (ii) They contain their own view and their own viewModel (iii) They can receive parameters, and optionally write back changes to them or invoke callbacks (iv) They can be composed together (nested) or inherited from other components AND they can either be preloaded, or loaded asynchronously (on demand) via AMD or other module systems
Which of the following are true? (i) In knockout, declaring a member as observable means when its value changes any other object watching the member gets notified of the change, thus allowing two-way data binding (ii) An observable array is an array of observable objects (iii) An example of a computed observable is ‘Full Name’, which observes and combines ‘first name’ and ‘last name’ (iv) Observables are objects that notify subscribers about changes and automatically detect dependencies. Observables helps KnockoutJS update the UI automatically when the view model changes
`self` was a common convention used back in the day to hold a reference to another `this`. Any function within the base view model function would be a different `this`. This gotcha is way less common nowadays in JS with arrow functions and such. (This library was popular long before ES6+ was widely used)
Which of the following will control flow with bindings? A) Applying bindings to objects or CSS B) Applying bindings to value, submit or event C) Code the mark-up to iterate through any array using the data-bind ‘for-each’ D) None of the above
That's exactly what happened to me, this is just what I need at this moment. Thanks for taking the time to make it and share it!
Haha same situation for me
Yeah same for me hahahaha
same here
same bruh
Knockout is underrated. Really nice what you can accomplish with it, and it was way before React and Vue existed.
Thank you so much for making this video! You are very kind to be looking out for the rest of us by making this content.
KnockoutJs is the father of Angular Framework!
I just start a new intership on a company and they use Knockout.js but I never heard of about it. Your videos came in the right moment, thank you!
Thank you for this... Started working on a Magento 2 framework that is using this on the frontend, instead of something like React which I was familiar with.
Saved my sprint. Thanks.
Thanks for this intro. I just got assigned a knockout task for my Agile story. Never worked with it before. Our legacy code uses knockout with type script as well ASP .
Thank you, for taking the time to make these videos! That helps a lot.
Drew, that's exactly what happend to me! I need to understand how Knockout.js works, and also how MVVM pattern works. So, I guess this series of videos will help me.
this is a must for Magento Devs 😂 nice one Drew
I am here as a Magento Dev 🤣🤣🤣🤣🤣🤣 glad to see I am not the only one
I still use KO because mostly I use Magento. I think the concept is more like Svelte, it use direct dom manipulation instead of virtual dom like react and vue
Hey thanks for producing this :) ‘preciate it!!
Thank you for the Video!! Helped me understand the concepts needed for KO code in one of my projects!!
It helped me a lot! Thank you bro
feeling is mutual...love your keyboard
Awesome, what a fun way to freshen up ko - Thank you!
In IT no technology is outdated. Same I m also here to learn knockout to support a existing project.
Good work mate!
Appreciate this man, very helpful!
This helps me alot. Thanks !
I started using knockout when I had a client that needed IE 6 support. I love how simple knockout is. Anybody can learn it in a week. I'm thinking it's time for us to go back to simpler paradigms.
you saved my day matey’, Magento 2 is a hell of a pffffft with k.o
I agree with you, I'm working with magento 2 too.
I am also a Magento dev and it is great seeing that you are a guitarist I just bought a guitar yesterday and starting my lesson next week with a friend that already plays. Looking forward to it. Also I hope you ended up getting this knockout
@@Alex-bc3tt got used to it man! have to, they are moving to vue i believe
Time saving video thanks buddy
Oh so nice! Pls keep it going. We using knockout.js in our projects at right now
Thanks for the video, it is helpful!
Thanks! It was really helpfull.
thank you
Thanks mate! Really appreciate your effort.
It's amazing, I'm VueJS & ReactJS developers. But they cannot run in specific condition. Came here for knockout js that supported all browser with almost same feature like react, vue even angular!
U r awesome maan 👍👍
Thank you for making this tutorial. we're using knockout in our project right now.
but i have a question, when the count changes how did dogStatus know that it has to re-compute ?
HI thanks
True ...
Thank you for this video, I Love Knockout, I use Knockout usually but I need to understand.. Is there a routing system to manage menu items (for navigation) ? if yes or if you use your own system can you make a video for this ? Thank you very much
how can i redirect one page observable property to another page(both having separate js file)?
Thanks
What dev-tool are you using in the video?
I can't see the JS code...
I just today started a job that require a lot of ko.js
Any tips besides the video? I'm starting now..
kirito kirigaya I have 4 videos about knockout so far on RUclips that cover my journey, at least. Let me know if there are certain areas that are tricky and I can record more 👍
@@DrewConley thank youuu
2 weeks ago for me but yep KO.js for Magento 2
Can we access view model property/update view model outside scope?
Yes. If you expose a reference to it, like ‘window.vm = this’, you can then call the observables like vm.updateSomething() from anywhere. That’s just an example on the window level, but it can be handy to pass references to view models to other view models on creation so they can talk.
@@DrewConley thanks a lot
var self = this;
Why do this? Can I just use this everywhere instead of self?
Self references ”this” in the correct scope. Jacascript has some quirks where this gets bound to a different scope than you probably intended.
I don't think -3 is a bug, it's counter of actionables :). I am so lame
Knockout is a pain to use imo. Wrapping everything to observables and obsessed vabkeArray and extension util methods ends up a huge mess
Which of the following describes Components in Knockout.js?
(i) They are a powerful, clean way of organizing the UI code into self-contained, reusable chunks and can easily be packaged for reuse across projects
(ii) They contain their own view and their own viewModel
(iii) They can receive parameters, and optionally write back changes to them or invoke callbacks
(iv) They can be composed together (nested) or inherited from other components AND they can either be preloaded, or loaded asynchronously (on demand) via AMD or other module systems
Too bad I cant give more than one like 👍🏽
Which of the following are true?
(i) In knockout, declaring a member as observable means when its value changes any other object watching the member gets notified of the change, thus allowing two-way data binding
(ii) An observable array is an array of observable objects
(iii) An example of a computed observable is ‘Full Name’, which observes and combines ‘first name’ and ‘last name’
(iv) Observables are objects that notify subscribers about changes and automatically detect dependencies. Observables helps KnockoutJS update the UI automatically when the view model changes
dude you should just zoom your screen out. you dont have to edit it everytime
Can't see the bottom portion of the code screen!
why not keep "this" keyword rather than make it become "self" ?
"this" is widely understood in other widely used languages like C#.
`self` was a common convention used back in the day to hold a reference to another `this`. Any function within the base view model function would be a different `this`. This gotcha is way less common nowadays in JS with arrow functions and such. (This library was popular long before ES6+ was widely used)
Yeah, same boat. Inheriting an old unmaintained project
Great content - terrible video capture. Typing off-screen??
I hope Magento could change to using new tech languages, they're still using less, requirejs, k.o it so old in 2023
Which of the following will control flow with bindings?
A) Applying bindings to objects or CSS
B) Applying bindings to value, submit or event
C) Code the mark-up to iterate through any array using the data-bind ‘for-each’
D) None of the above
Hello drew can you exaplain me in hindi😂😂