vue之watch篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue之watch篇相关的知识,希望对你有一定的参考价值。

参考技术A

简介 :虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化。当需要在<span style="color:red">数据变化时执行异步或开销较大的操作时</span>,这个方式是最有用的。

注意点 :<span style="color:red">不应该使用箭头函数来定义 watcher 函数</span>

watch中的几个常见属性 :

可以在watch中执行复杂的异步操作等;这些是computed不能胜任的。具体可以参考官网的案例

注意 :在变更 (不是替换) 对象或数组时,旧值将与新值相同,因为它们的引用指向同一个对象/数组。Vue 不会保留变更之前值的副本

语法 : vm.$watch( expOrFn, callback, [options] )

vm.$watch : 返回一个取消观察函数,用来停止触发回调

注意 :组件选项中的watch中可以随着组件的销毁而销毁,而实例方法的 vm.$watch() ,我们需要手动销毁

vue之watch用法

watch是一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名,或者包含选项的对象 watch:{

        //属性
     msg:
function(newVal,oldVal){ console.log(oldVal+‘改变成‘+newVal) },  //函数 msg1(newVal,oldVal){ console.log(oldVal+‘改变成‘+newVal) }, msg2:[//数组 function(newVal,oldVal){ console.log(oldVal+‘改变成‘+newVal) }, function(newVal,oldVal){ console.log(oldVal+‘改变成‘+newVal) } ], msg3:{//对象 handler:function(newVal,oldVal){ console.log(oldVal+‘改变成‘+newVal) }, deep: true },    //对象中的属性
     ‘msg.age‘: function(newVal,oldVal){
          console.log(oldVal+‘改变成‘+newVal)
        }
    }

 






以上是关于vue之watch篇的主要内容,如果未能解决你的问题,请参考以下文章

vue2.x版本中computed和watch的使用入门详解-watch篇

vue之watch和计算属性computed

vue3之watch监听

vue之watch用法

vue之computed和watch

vue之watch用法