Vue.js 2.X is a fast, lightweight framework for building user interfaces in Javascript. It is similar in many ways to Angular and React, and like those libraries can be used either to provide just the view layer (the V in MVC) for a larger application, or (in combination with other tools) to create fully-featured single-page web applications.
Vue takes a more minimal approach than Angular or React, however; it relies more on traditional web technologies (e.g. it allows JSX but encourages templating in HTML) and the use of outside libraries to complement its core functionalities. This gives it a faster learning curve than many other frameworks, and allows developers to continue using their preferred tools to accomplish tasks within Vue.
Web developers familiar with other front-end frameworks will find many familiar features in Vue, from a component-based paradigm and the virtual DOM to conditional rendering with directives such as v-if
, v-show
, and v-hide
. These features are combined with innovations such as single-page templates and computed component properties.
Vue 2.X retains 90% of the API of 1.X, with the most significant changes involving renaming of component lifecycle hooks and the removal of support for fragment component instances. A migration helper is available for developers who want to upgrade from earlier versions of Vue.