Vue.js: Difference between revisions

Content deleted Content added
m Sentence casing for sub-section titles, as per WP:STYLE. Expansion.
m Comparison with other frameworks: Ref. <https://en.wikipedia.org/wiki/Ember.js> and <http://en.wikipedia.org/wiki/KnockoutJS>. Applied WP:CONTRACTION.
Line 96:
Some of Vue’s syntax will look very similar to AngularJS (e.g. <code>v-if</code> vs <code>ng-if</code>). This is because there were a lot of things that AngularJS got right and these were an inspiration for Vue very early in its development. There are also many pains that come with AngularJS however, where Vue has attempted to offer a significant improvement.
 
=== Ember.js ===
Ember.js is a full-featured framework that is designed to be highly opinionated. It provides a lot of established conventions and once you are familiar enough with them, it can make you very productive. However, it also means the learning curve is high and flexibility suffers. It’sIt is a trade-off when you try to pick between an opinionated framework and a library with a loosely coupled set of tools that work together. The latter gives you more freedom but also requires you to make more architectural decisions.
 
That said, it would probably make a better comparison between Vue core and Ember’sEmber.js’s templating and object model layers:
* Vue provides unobtrusive reactivity on plain JavaScript objects and fully automatic computed properties. In Ember.js, you need to wrap everything in Ember.js Objects and manually declare dependencies for computed properties.
* Vue’s template syntax harnesses the full power of JavaScript expressions, while Handlebars’ expression and helper syntax is intentionally quite limited in comparison.
* Performance-wise, Vue outperforms Ember.js by a fair margin, even after the latest Glimmer engine update in Ember.js 2.0. Vue automatically batches updates, while in Ember.js you need to manually manage run loops in performance-critical situations.
 
=== KnockoutKnockoutJS ===
KnockoutKnockoutJS was a pioneer in the MVVM and dependency tracking spaces and its reactivity system is very similar to Vue’s. Its browser support is also very impressive considering everything it does, with support back to Internet&nbsp;Explorer&nbsp;6! Vue on the other hand only supports Internet&nbsp;Explorer&nbsp;9 and later.
 
Over time though, KnockoutKnockoutJS development has slowed and it’sit has begun to show its age a little. For example, its component system lacks a full set of lifecycle hooks and although it’sit is a very common use case, the interface for passing children to a component feels a little clunky compared to Vue’s.
 
There also seem to be philosophical differences in the API design which if you’reyou are curious, can be demonstrated by how each handles the creation of a simple todo list. It’sIt is definitely somewhat subjective, but many consider Vue’s API to be less complex and better structured.
 
=== Polymer ===