computed和watch的区别

112 阅读1分钟

computed

computed是计算属性意思,它会根据你所依赖的数据动态显示出新的计算结果。

计算结果会被缓存,在使用的时候不用加括号。

当一个属性受多个属性影响的时候就需要用到computed,最典型的例子: 购物车商品结算的时候。

watch

watch是监听的意思,当依赖的data数据变化,执行回调,在方法种会传入newValoldVal

当一条数据影响多条数据的时候就需要用watch,最典型的例子: 购物车商品结算的时候。

有两个属性,分别是immediate属性和deep属性和handler方法

immediate

表示是否在第一次渲染的时候执行这个函数,为true时则立即触发回调函数;

如果为false,则和上面的例子一样,不会立即执行回调。;

deep

属性是监听一个对象,我们是否要看对象里面的属性的变化,如果要看,将其设置成true,默认是false

handler方法

handler方法就是你watch中需要具体执行的方法;