Reactivity System 是 Vue 框架里的一个很重要的功能,可以翻译成反应系统。我们在组件里添加了数据,把它绑定在组件的模板上使用。这个数据的值发生了变化以后,组件会被重新渲染,显示更新之后的内容。
可以先做一个小实验,现在这个标题元素里面绑定输出了 name 这个数据,在这个标题元素上,可以绑定一个 click 事件,点击事件发生以后,可以设置一下 name 这个数据的值,把它设置成 NINGHAO。
在浏览器上测试一下,点击这个标题内容,发生点击事件,就会把 name 的值设置成 NINGHAO,组件会被重新渲染,显示更新之后的结果。
在组里添加的数据, Vue 都会特别处理一下,让它们拥有反应性。 Vue 用的是 JavaScript 里的 Proxy ,这个 Proxy 可以拦截处理对象的行为。
在这个组件里添加一个 created(),组件被创建的时候会执行这个生命周期方法,在这个方法里,用 console.log 输出 this.$data,这个 $data 就是组件里的数据。
在浏览器的控制台上观察一下,你会发现,输出的是一个 Proxy 对象。 在这个对象里可以设置一些 hander 来处理对这个对象的一些操作。
在 Target 这个对象的里面,你会看到一个 name 属性,它的值是 宁皓网 。