By now, we have covered most of the concepts in Vue.js. Those that we haven't talked about will be discussed when we build the TaskAgile application. For now, let's see what is behind the scene and how Vue.js makes the magic happen.
The simplicity and powerfulness of Vue.js originate from its reactive data binding system. It is designed to be intuitive, and it doesn't require your attention to keep the data and the view in sync.
Essentially, to archive this ubiquitous reactivity, internally, Vue.js implements a variant of the observer design pattern to collect dependencies of the data and notify watchers when data is changed. During the initialization of a Vue instance, Vue.js makes every property of the data
object reactive by using the Object.defineProperty()
method to create a getter and a setter function for accessing that property and updating its value respectively. When the render function updates the DOM, it invokes the getter functions of the properties...