监测 Vue 实例变化的一个表达式或方法。回调函数得到的参数为新值和旧值,用一个函数取代。
简洁的说:watch的作用可以监控一个值的变换,并调用因为变化需要执行的方法。可以通过watch动态改变关联的状态。
1、监听一个数据变化
<input type="text" v-model="val"/>
data(){
return{
val:'2'
}
},
watch: {
val: {
handler(newVal, objVal) {
console.log(11);
},
}
}
2、当监测为对象的时候(非数组情况),deep = true (对象内部的属性监听,也叫深度监听),包含handler方法和immediate(进入组件的时候,第一次并不会执行watch,是因为immediate 默认 false,当 immediate = true 的时候,进入组件会立即执行。并且可以监测到组件传递数据)
<input type="text" v-model="obj.name"></p>
watch: {
'obj.name': {
handler(newName, oldName) {
// ...
},
deep: true,
immediate: true
}
}
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有