vue中methods、computed、watch的区别

vue中methods、computed、watch的区别:

  1. methods方法定义的函数,可以主动调用各类数据和属性,但是methods没有主动监听和数据缓存的能力。
  2. computed方法定义的函数,一般是计算某些数据或属性,并且是依赖其他属性计算得出的结果。computed的值在getter执行后是会缓存的,只有在它依赖的属性值改变之后,下一次获取computed的值时才会重新调用对应的getter来计算。
  3. watch是监听函数,单某一个值的变化时执行对应的方法,watch在每次监听的值变化时,都会执行回调,watch的回调里面会传入监听属性的新旧值,通过这两个值可以做一些特定的操作。

总结:

  如果一个值依赖多个属性(多对一)或需要缓存数据,用computed更加方便。

  如果一个值变化后会引起一系列操作,或者一个值变化会引起一系列值的变化(一对多),用watch更加方便一些。

  不符合上述两种的函数,则使用methods就行。

猜你喜欢

转载自www.cnblogs.com/webwangjie/p/11507831.html