computed 和 watch 的区别

116 阅读1分钟

computed

computed就是计算属性的意思,它是用来计算一个值的,在调用的时候可以不加括号当成属性一样用,它会根据依赖自动缓存,依赖如果没有发生改变,computed的值就不会再重新计算

watch

watch就是监听,观察的意思。如果某个属性变化了就去执行某个函数,watch有两个选项:

  1. immediate:表示是否在第一次渲染的时候执行函数
  2. deep:深度监听,如果我们监听一个对象,是否要同时监听对象里面的属性的变化

总结

  1. 如果一个数据依赖于其他数据就可以用computed
  2. 如果你需要在某个数据变化时做一些事情可以使用watch来观察这个数据的变化