

When a Vue instance is created, it recursively walks all child nodes of its root element while setting up the necessary data bindings. Each Vue instance is associated with a corresponding DOM element. The actual DOM that is managed by Vue instances. For more details see The Vue Constructor. This is the primary object that you will be interacting with as a developer when using Vue.js.

They are instantiated with the Vue constructor or its sub-classes: 1 In Vue.js, every Vue instance is a ViewModel. Concepts OverviewĪn object that syncs the Model and the View. Despite the similarities, I believe Vue.js offers a valuable alternative to these existing libraries by finding a sweetspot between simplicity and functionality.Įven if you are already familiar with some of these terms, it is recommended that you go through the following concepts overview because your notion of these terms might be different from what they mean in the Vue.js context. Vue.js’ API is heavily influenced by AngularJS, KnockoutJS, Ractive.js and Rivets.js. It’s also a natural fit for no-backend services such as Firebase. You can use it alone for rapid prototyping, or mix and match with other libraries for a custom front-end stack. It is not a full-blown framework - it is designed to be a view layer that is simple and flexible. Philosophically, the goal is to provide the benefits of reactive data binding and composable view components with an API that is as simple as possible. Actual DOM manipulations and output formatting are abstracted away into Directives and Filters. It connects the View and the Model via two way data bindings. Technically, Vue.js is focused on the ViewModel layer of the MVVM pattern. Vue.js is a library for building interactive web interfaces.
