Vue监视属性

Vue监视属性

关键字watch

watch默认不监测对象内部的值的改变

       //第一种写法
             watch:{
                isHOT:{
                   immediate:true,//初始化的时候被调用一下
                    handler(newValue,oldValue){
                        console.log('isNOT被修改了',newValue,oldValue)
                     }
               }
             }
​
        })
        //第二种写法
        vm.$watch('isHOT',{
              
                    immediate:true,//初始化的时候被调用一下
                    //handler当isNot被改变时调用
                    handler(newValue,oldValue){
                        console.log('isNOT被修改了',newValue,oldValue)
                    }
                })
       

第二种写法监视属性必须存在。

深度监视:

指定deep为true

number:{a.... b.....}

 //第一种写法
            watch:{
                //监测所有number属性
                // number:{
                //     deep:true,//深度监视
                //     handler(){
                //         console.log('a,b修改了')
                //     }
                // },
                //单独监视一个
                'number.a':{
                    handler(){
                        console.log('a单独的被修改了')
                    }
                }
            }

简写:

data:{

isHOT:true

},

      //第一种写法-----只有handler的时候才可以简写
      //属性(){}
            watch:{
                isHOT(newValue,oldValue){
                        console.log('isNOT被修改了',newValue,oldValue)
                    }      
            }
      //第二种写法
      //vm.$watch('属性',函数)
         vm.$watch('isHOT',{
                    function(newValue,oldValue){
                         console.log('isNOT被修改了',newValue,oldValue)
                     }
                 })
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值