每个vue实例都会代理 data对象里的所有属性:
var data = { a :1 }
var vm = new Vue({
data:data
})
vm.a === data.a //true
//设置属性也会影响原始数据
vm.a=2
data.a //-->2
data.a=3
vm.a//-->3
注意只有这些被代理的属性是响应的。如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。
我们将在后面详细讨论响应系统。
除了 data 属性, Vue 实例暴露了一些有用的实例属性与方法。
这些属性与方法都有前缀 $,以便与代理的 data 属性区分。例如:
var data ={a:1}
var vm = =new Vue({
el:'example'
,
data:data
})
vm.$data ===data//->true
vm.$el ===document.getElemntById('example')//->true
vm.$eatch('a',function (newVal, oldVal){}
}