既能用computed 实现又可以用 watch 监听来实现的功能
methods,watch和computed都是以函数为基础的
1,methods
不存在缓存,执行一次运行一次,执行n次,运行n次
2,computed
计算属性 computed 是基于data中数据进行处理的,data数据变化,他也跟着变化
当data中数据没有发生改变时,我们调用computed中函数n次,只会进行缓存(执行一次)
每个计算属性都包含两个set、get 属性
3,watch
watch:监测的是属性值, 只要属性值发生变化,其都会触发执行回调函数来执行一系列操作
通过watch给属性绑定函数,当属性的值发生变化时,该函数就会自动被调用,调用时可以接收两个参数,第一个参数是属性改变后的值,第二个参数是属性改变前的值。
watch的详细用法请参考:https://www.imooc.com/article/70010
除此之外,有点很重要的区别是:计算属性不能执行异步任务,计算属性必须同步执行。也就是说计算属性不能向服务器请求或者执行异步任务。如果遇到异步任务,就交给侦听属性。watch也可以检测computed属性。