computed和watch的区别:
- computed是计算属性,通过属性计算得来的属性,而watch是监听一个值的变化,然后执行对应的回调1。
- computed中的函数直接调用,不用加(),而watch中的函数不需要调用1。
- computed是依赖data中的属性,data中属性发生改变的时候,当前函数才会执行,而watch不支持缓存1。
- computed属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算,而watch一个对象,键是需要观察的表达式,值是对应回调函数。
computed和watch的运用场景:
- computed适合用在多个数据相互影响,需要处理复杂逻辑或多个属性影响一个属性的变化时使用,例如:购物车商品结算等。
- watch适合用在数据影响多个数据,需要在数据变化时执行异步操作或者开销较大的操作时使用,例如:搜索数据等。