一,侦听器基本概念:
可以侦听指定名称的属性值的变化,当属性值变化的时候自动的触发侦听器,进行相应的业务处理
二,简单侦听:
(直接侦听常规属性值的变化)
1.函数名称必须和属性名称完全一致
2.不能人为调用
3.没有返回值,如果你想使用处理结果,必须将结果赋值给data中的成员,再进行使用
4.watch是一个单独的选项
语法:
watch:{ 属性名称(新值,旧值){ } }
三,深度侦听:
1.deep(深度侦听):默认情况下,侦听器无法侦听对象的属性值的变化,如果想实现这个效果,则需要添加deep配置为true
2. handler(固定方法触发):因为你要添加deep的配置,所以,侦听器的形式要变更为对象形式,只有对象才能添加其它的配置, 同时侦听函数必须为handler
3. immediate(立即侦听):如果需要默认一进页面就触发一次,添加immediate配置选项为true
语法:
watch:{ handler(newv){ // 处理 }, deep:true, immediate:true }
4.代码演示:
watch: {
obj: {
handler () {
console.log('我触发了');
},
deep: true, // 深度侦听
immediate: true,//立刻触发
}
}
}