computed methods watch区别
2019-03-15 本文已影响6人
说不出口的喵
computed是属性调用,而methods是函数调用
computed带有缓存功能,而methods不是
computed定义的方法我们是以属性访问的形式调用的,{{xxx}}
但是methods定义的方法,我们必须要加上()来调用,如{{xxx()}}
在Vue实例化的时候,computed定义Test方法会做一次计算,返回一个值,在随后的代码编写中,只要Test方法依赖的message数据不发生改变,Test方法是不会重新计算的
这样的好处也是显而易见的,同样的,如果我们碰到一个场景,需要10000个Test的返回值,那么毫无疑问,这相对于methods而言,将大大地节约内存
哪怕你改变了message的值,computedTest也只会计算一次而已。
至于watch 我觉得类似iOS原生的通知。主要是处理逻辑用的。
1 methods 是定义方法的 不存在自动监听的
2 computed是监听属性变化的,是对vue的性能进行的提升。省的刷新
3 watch写监听逻辑 类似原生的方法
更详细的介绍 请看 这位兄弟的 讲的很通俗易懂。
https://www.cnblogs.com/penghuwan/p/7194133.html#_label0_0