通常使用data
配置项来声明Vue实例的数据模型,这容易让我们误以为 只有在data
对象上声明的数据才可以与模板绑定。
当然不是这样,模板的数据上下文 = Vue实例对象。
当Vue.js创建一个Vue实例时,它会将data
配置项的每个根属性,(经过若干处理后) 添加为实例的根属性。
因此,实际上我们可以在模板中绑定实例的任意属性。例如:下面的模板可以输出 $mount()
方法的源代码:
<pre>{{$mount}}</pre>
既然如此,我们为什么需要使用data
配置项来声明数据模型,而不是直接 在实例上设置数据模型呢?例如,下面的代码有什么问题呢?
var vm = new Vue({
template:'<h1>{{name}}</h1>',
})
vm.name = 'WHOAMI';
vm.$mount('#app');
这关乎Vue.js的一个核心特性 ———— 响应式计算。
本分类所有内容均出自汇智网