Closed milimetric closed 8 years ago
Yep. I'll second that. As one of the only other frameworks that does dependency tracking, a comparison with knockoutjs is very obviously missing.
I think that vuejs.org has already a lot of comparisons. Take a look at http://vuejs.org/guide/comparison.html
We cannot add every js framework out there otherwise that page will be too long.
I agree that vue.js should not be compared to every framework. The reason to compare it to knockout is because of all the frameworks out there, it's by far the most similar. And since knockout was around for years and vue is new, addressing what exactly it's trying to accomplish that's different from knockout seems important. Unless of course it's trying to just steal knockout's ideas and wrap them up in a sexier package. In which case of course it shouldn't write documentation about that, it would be silly. I'm just pointing out that in the absence of that documentation people will draw their own conclusions. From: Claudio LudovicoSent: Saturday, March 12, 2016 06:22To: vuejs/vuejs.orgReply To: vuejs/vuejs.orgCc: Dan AndreescuSubject: Re: [vuejs.org] Update documentation to compare with knockout (#233)I think that vuejs.org has already a lot of comparisons. Take a look at http://vuejs.org/guide/comparison.html
We cannot add every js framework out there otherwise that page will be too long.
—Reply to this email directly or view it on GitHub.
@milimetric the obvious difference is components, I'm not sure if it needed pointing out. FYI when Vue was launched (Feb 2014), Knockout didn't have the concept of components at all, it landed in Knockout 3.2 almost half a year later. Maybe you should go ask knockout to clarify in their docs what makes Knockout's component different from Vue's.
Sure, but it was announced publicly by the knockout community in Jan 2014, and talked about before that. modern knockout development always uses them, but it's a very non-opinionated library. I think that might be one of the major differences, the general approach. I see vue as knockout with a few lightweight opinions From: Evan YouSent: Saturday, March 12, 2016 10:00To: vuejs/vuejs.orgReply To: vuejs/vuejs.orgCc: Dan AndreescuSubject: Re: [vuejs.org] Update documentation to compare with knockout (#233)@milimetric the obvious difference is components, I'm not sure if it needed pointing out. FYI when Vue was launched (Feb 2014), Knockout didn't have the concept of components at all, it landed in Knockout 3.2 almost half a year later.
—Reply to this email directly or view it on GitHub.
@milimetric I don't know how Knockout works, I am open to any pull request about Knockout vs Vuejs
Ok, thanks, I'll have to first learn Vue better and I'll submit a PR if someone doesn't beat me to it.
This is now addressed in the 2.0 comparison guide. Would love any feedback from Knockout fans!
The comparison looks great, thank you. As a longtime knockout user, I actually agree with development slowing a bit. I'm excited to try Vue on my next project, the component system looks really fun.
@milimetric Very glad to hear we did it justice! 🙂
I'm looking into trying out vuejs and I'm not familiar with it yet, but in the todo list gist that is linked in the comparison, it references
Vue instances are scoped to a specific element, while Knockout will parse the entire DOM.
Knockout can also be scoped to a specific element, as seen in the docs here (Observables -> Activating Knockout)
ko.applyBindings(<model>, <element>);
I've worked with knockoutjs before and it seems like vuejs definitely has less boilerplate, which is awesome.
Thanks for pointing this out! We'll update the doc.
This seems like a great library that's bringing a lot of reactive programmers from different backgrounds together. But in all the intro writings I didn't find any mention of Knockout.js which it seems most similar to. I think a paragraph on how Vue compares with Knockout would be very useful.
If the authors aren't familiar with knockout, I'm happy to learn Vue while teaching someone Knockout so we can write something together that makes sense :)