What Changed With Vue 2?

Although Vue.js was originally released in 2014, it has been largely overshadowed by libraries/frameworks like React and Angular over the past few years. This has been largely due to the rich ecosystems surrounding both React and Angular. Considering both React and Angular are backed by two of the world's largest tech companies (Facebook, Google), it is no surprise that Vue has been put on the back burner these past 3 years.

Despite the stiff competition surrounding JavaScript frameworks in general, Vue has started building serious traction thanks to the release of Vue2. Officially released in September 2016, Vue2 has quickly become a top competitor to both React and Angular. In this article, we discuss the key features and improvements surrounding Vue2 including its Virtual DOM, server side rendering, and overall flexibility.

What is Vue.js?

Vue.js is a cross-platform JavaScript framework for building UIs. It was created by Evan You, a former Google employee who sought to improve upon the pitfalls experienced with Angular 1. Unlike React, Vue uses more traditional web technologies (HTML, CSS) and doesn't rely on build systems like Webpack. Vue takes a more MVC like approach and largely resembles Angular 1 with directives etc.

Since the release of Vue2, the framework has really gained popularity and is used by companies like Alibaba and Baidu.

What's New In Vue2?

Vue2 features some key improvements that make it a top contender for the best modern JavaScript framework. These improvements include:

Virtual DOM

Like React, Vue2 implements a Virtual DOM for updating UI elements. Vue's implementation of the Virtual DOM is superior for a few reasons. First, it's more efficient than React's. It identifies static class names, attributes, and sub trees to avoid unnecessary diffing when it re-renders elements. Second, its automatically optimized with little interaction needed from the developer. You don't have to worry about calling things like shouldComponentUdate with Vue's Virtual DOM.

Server Side Rendering

One of the key advantages to Angular and React is their sever side rendering ability. This is especially important for SEO since pages are delivered as static content that web crawlers can more easily read.

Vue2 features server side rendering and does it better than React. Unlike React's synchronous model, Vue ensures responsive servers by not interrupting event loops.

Flexibility

While Vue leans more on traditional web technologies (HTML, CSS) for templates, Vue2 features optional integration support for JSX and rendering functions. In fact, you can interact directly with Vue's Virtual DOM by calling render() functions. You can even reference render() functions directly in your templates with Vue2.

Vue2 even includes typeScript typings, making it extremely flexible with the coding styles adopted by other frameworks (Angular 2).

Conclusion

While Vue has been around for nearly four years, it has only recently come to the forefront of the great JavaScript framework debate. With a superior Virtual DOM and server side rendering, Vue2 improves upon the key strengths of frameworks like Angular or Ember and libraries like React. It's even playing a key role in the development of weex, a framework for building mobile cross-platform apps.

Such improvements leave little doubt that Vue2 is a top contender for the best JavaScript framework to use moving forward.

Your thoughts?