DEV Community

Cover image for What's vue.js?
bluepaperbirds
bluepaperbirds

Posted on

What's vue.js?

Vue.js it's a JavaScript framework for building front-end UIs. In Vue.JS you can start simple and then progressively add in the tools and features that you need to build a complex web application.

At its core it provides a way to build components that encapsulate data or state in your JavaScript and then connect that state reactively to a template in HTML.

We call these components declarative views because the same data inputs will always produce the same output in the visual UI.

How does it work?

When we declare data on this data object it links or binds it to the HTML on the template above when the value of the data changes the component will automatically rerender. In other words it's reactive and the framework does a ton of work under the hood to make sure that this process is performance across a huge component tree we can work with this data in the template thanks to views HTML based template syntax we can interpolate a value for expression using double braces and we also have a variety of directives to control the behavior of the HTML based on the data.

We can use Vue.js to only render an element when the value is True and then we might have a fallback element after that that's only rendered.

We can do that directly in the template or define a custom method and the components methods object the method has access to our reactive data and that
means all we have to do is change the value of the data and the component will automatically rerender and that's all it takes to build an interactive reactive declarative UI component with Vue.js.

You can see vue.js examples here.

Who uses Vue.js?

The framework is loved by developers for the simplicity but also its ability to scale up in complexity incrementally its plugin system allows you to easily drop in things like a router state management firebase support and more and perhaps
best of all it's not sponsored by some mega corporation.

It's not pressured to push out new releases all the time and does a great job listening to its community.

Top comments (1)

Collapse
 
thomasbnt profile image
Thomas Bnt ☕

Add this tag on your post 😄

#vue

Official tag for the Vue.js JavaScript Framework