overview
在Vue中,这三个API能实现同样的效果,但是作用又略有不同,例如我们现在有一个反转输入的input内容的需求,我们看看三个API分别如何实现
expression
首先是expression,最简单方式,但是缺点比较明显,第一,不是声明式,而且不直观,第二,如果多个地方使用,就要写多次,非常冗余
methods
然后是methods,其实就是方法调用,缺点主要是同样的计算过程要调用多次,比较冗余
computedValue
使用computedValue的好处就是可以缓存计算过的value,这样如果需要多次调用,就不需要多次计算,在计算量比较大的应用场景里能提高效率,节约计算资源
watch
watch的根本目的是在于观测一个value的变化,所以如果需要计算的值需要依赖多个value,那么就需要观测多个value,而且,如果要在templete中显示的话,就需要在data中用另外一个value来保存改变后的值