学习vue的第二天

vue扩展

1.v-model 只能用于表单元素,也就是说带有value的元素

2.el有两种写法:一种是el:'#app',另一种是v.$mount(‘#app’)

3.data有两种写法:一种是对象形式,另一种是函数形式,函数形式只能用普通函数,不能用箭头函数

函数形式为:data:function(){

return {

name:'李琼'

}

}

MVVM 模型

1.M:对应data中的数据

2.V:模板

3.VM:Vue实例对象,以后创建Vue实例可以用VM来接收

Object.defineProperty

 <script type="text/javascript">
let number = 18
let person = {
    name:'张三',
    sex:'男',
}
Object.defineProperty(person,'age',{
    //value:18,
    // enumerable:true,//控制属性是否可以枚举,默认值是false
    // writable:true,//控制属性是否可以被修改,默认值是false
    // configurable:true,//控制属性是否可以被删除,默认值是false
    // //当有人读取person的age属性时,get函数(getter)就会被调用,且返回值就是age的值
    get(){
        console.log('有人读取age属性了')
        return number
    },
    //当有人修改person的age属性时,set函数(setter)就会被调用,且会收到修改的具体值
    set(value){
        console.log('有人修改了age属性,且值是',value)
        number = value
    },
})
console.log(person);
    </script>

数据代理

  1. 通过vm对象来处理data对象中属性的操作(读/写)

  2. 好处:更加方便操作data中的数据

  3. 原理:

    通过Object.defineProperty()把data对象中所有属性加到vm上。

    为每一个添加到vm上的属性,都指定一个getter/setter。

    在getter/setter内部去操作(读/写)data中对应的属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值