For Vue.js, components power interactive Web interfaces

29.10.2015
Vue.js, a JavaScript library for building interactive Web interfaces, has reached a 1.0.0 release status.

Focused on the view layer, open source Vue.js leverages reactive data binding and composable view components. It can be integrated with other libraries and existing projects. Formerly a core developer on the Meteor JavaScript framework and now the key mover of Vue.js, Evan You has big ambitions for it, as outlined in an email: “I want it to be one of the top choices for building Web apps, because there shouldn't and will not be one framework that rules it all.”

Components, You said, “are the heart and soul" of Vue.js. “That is the basic unit you use to compose a user interface. It's very similar to Web Components but provides features necessary for building real apps that plain Web Components do not address.”

Animation is another highlight. Vue ships with a system for automatically applying transition effects when elements are placed in or removed from the DOM. CSS classes are removed or added to trigger CSS animations or transitions. “The most important thing is that Vue.js makes data-driven animation efficient. Both dirty checking (used by Angular) and Virtual DOM (used by React) have fundamental performance issues in this aspect,” You said.

Version 1.0.0 features an improved template syntax, faster initial rendering, and API deprecations to make Vue.js suitable for larger projects. ”Specifically, we are deprecating features that make it hard to maintain and refactor a component in isolation without affecting the rest of the project,” according to the Vue.js site. Also featured in version 1.0 is better tooling, including hot component reloading, scoped CSS, and ECMAScript 2015 by default, with a syntax enabling cleaner code.

Compared to other JavaScript technologies, Vue.js is simpler to use than Angular and offers better performance, according to the Vue.js website. Though React and Vue.js are similar, the internal implementation is different, the site noted.

“I'd like to point out that React, Angular, and Meteor are three very different type [of] projects in terms of scope -- Meteor is the ‘full stack’ framework that includes everything you need, all the way from database to the front end,” said You. “Angular is a full-blown framework, but only for the front end; React is just the view layer of the front end but it has a set of optional, accompanying tools and libraries that completes the full picture. Vue is most similar to React in this aspect."

(www.infoworld.com)

Paul Krill