computed 和 watch 的区别
# computed 和 watch 的区别
computed
(计算属性)
- 依赖于某些值返回一个值,可以设置get和set方法
- 有缓存,依赖的值没有变化,那么不会重新计算
watch
(监听属性)
- 监听一个值的变化,当被监听的值改变时,可执行相关动作
- 可设置深度监听,deep: true,用来监听多层对象
- 可设置立即执行,immediate: true,即组件初始化时立即执行被监听的值的相关动作
# 使用场景
根据computed和watch的特点
当我们需要进行数值计算,并且依赖于其它数据时,应该使用 computed,因为可以利用 computed 的缓存特性,避免每次获取值时,都要重新计算;
当我们需要在数据变化时执行某些操作时,应该使用 watch