Vue基础总结系列文章第四篇---computed和watch的区别

一.两者共同点

computed 和watch 都是监听某个值,然后计算新的值,或者触发某个操作,注意在computed 和watch 一定不要去修改原来的值,否则可能会导致无限循环问题。

二.两者区别

1.computed

Vue基础总结系列文章第四篇---computed和watch的区别

computed的缓存特性,体现在当页面重新渲染的时候,computed观察的属性只要不变,computed就不重新计算,会使用之前缓存的数据。而用函数计算则不能达到这种效果。watch也不能。

2.watch

Vue基础总结系列文章第四篇---computed和watch的区别

watch观察对象的时候,如果是熟悉修改,需要检查到变化,需要些deep:true,或者语法糖观察某个属性变化,提高性能

Vue基础总结系列文章第四篇---computed和watch的区别

三.总结

Vue基础总结系列文章第四篇---computed和watch的区别

参考代码:

https://github.com/ssxsite/vue2-webpack_update/blob/master/practice/computed/index.js