首先,computed是计算属性,是依赖其他属性计算出来的值,watch 是去监听一个值的变化,然后执行对应的函数。
其次,computed会在vue实例化过程中执行一次(前提是该计算属性在template中有用到,如果没用到,则不会执行),而watch在初始化时,不会执行。
如果需要一个属性值,则属性依赖多个别的属性,用computed会更加方便,如果一个值变化后会引起一系列操作,或者用来处理开销比较大的操作或异步操作,那么用watch更加方便。
关于computed可以用method代替:
method的方法是每次都会调用,而computed是基于它的依赖具有缓存的,只有在依赖属性发生改变时才会去重新求值。而method是每次都会去重新计算。
网友评论