1.通过vue实例都可以访问那些属性?(通过vm都可以vm.什么)
vue实例中的属性很多。有的以$开始,有的以_开始。
所有以$开始的属性,可以看做是公开的属性,这些属性是提供给程序员使用的
所有以_开始的属性,可以看做是私有属性,这些属性是vue框架底层使用的,一般我们程序员很少用
通过vm也可以访问vue实例对象的原型对象上的属性,例如:vue.$delete.....
<body>
<div id = “app”>
<h1>{{name}}</h1>
</div>
<script>
let dataObj ={
msg : ‘Hello Vue!’
}
const vm =new vue ({
el : ‘#app’
data : dataObj
})
console.log (‘dataObj的msg’,dataObj.msg); //按说msg是dataObj对象的属性
console.log( ‘vm的msg’,vm.msg); //为什么msg属性可以通过vm来访问。
这是为什么vue 框架底层使用了数据代理机制。要想搞明白数据代理感,必须有一个基础知识点要学会:Object.defineProperty
</script>
</body>