watch监听中的deep以及immdiate


1 deep:深度监听

使用场景:如果是监听的是对象类型,当手动修改对象的某个属性时,发现是无效的,此时需要给监听器添加deep:true。

例如:

data:{
    obj:{
      a:1
    }
},
watch:{
    obj:{
      handler(newName,oldName){
          //执行代码
      },
      deep:true //为true,表示深度监听,这时候就能监测到a值变化。
    }
}

 

2 immdiate

使用场景:watch默认绑定,页面首次加载时,是不会执行的。只有值发生改变才会执行。如果想立即执行怎么办?

例子:

watch:{
2     name:{
3       handler(newName,oldName){
4           //执行代码
5       },
6       immediate:true //true就表示会立即执行
7     }
8 }

 

data:{ obj:{ a:1 } }, watch:{ obj:{ handler(newName,oldName){ //执行代码 }, deep:true//为true,表示深度监听,这时候就能监测到a值变化 } }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM