DEDECMS经验:快速属性编辑时的BUG及修正方法
201
2022-07-30
很多小伙伴都不明白computed、getters,watch的区别,经常不知道在何种场景下使用哪一种,今天,小编就带大家区分一下computed以及getter和setter的使用,认真分析一下computed、getters,watch的区别,帮助大家更好地理解和运用。那么,就一起来学习一下吧!
computed、getters,watch的区别所在
1.computed是基于依赖缓进行缓存的。也就是说,计算属性的触发条件是他的依赖变化了才会重新执行,computed适用于获得一个值或者结果,该结果受其他依赖的影响(一个数据受多个数据影响)。
2.methods就像我们写的普通函数一样,需要我们主动去调用才会执行。而不是依赖数据的变换,并且也不需要返回一个结果,可以仅仅执行一个过程。当我们在获取一个数据时需要对一个大的数组进行大量循环才能获取时,那我们选择计算属性,基于依赖进行缓存那将会节省大量的性能消耗。而不是像methods一样每次调用都执行。Methods用的也是最多的,一般的事件绑定,普通函数,请求数据方法都是在methods中处理。然后vue的生命周期函数就是在相应的或者合适的时机调用这些定义好的函数。
3.watch是侦听一个参数,当这个参数发生变化时影响其他数据的变化。并且可以获得该参数的新值和旧值进行相应的计算,它适合侦听一个数的变化,当该数据变化,来处理其他与之相关数据的变化。
computed、getters,watch的区别
vue中computed、getters,watch的区别
Vue 中,computed 的属性可以被视为是 data 一样,可以读取和设值。因此在 computed 中可以分成 getter(读取) 和 setter(设值),一般情况下是没有 setter 的,computed 预设只有 getter ,也就是只能读取,不能改变设值。
computed、getters,watch的区别
computed、getters,watch的区别与具体使用
watch中的函数是不需要调用的,computed内部的函数调用的时候不需要加()
watch属性监听 监听属性的变化;computed:计算属性通过属性计算而得来的属性
watch需要在数据变化时执行异步或开销较大的操作时使用;对于任何复杂逻辑或一个数据属性在它所依赖的属性发生变化时,也要发生变化,这种情况下,我们最好使用计算属性computed。
computed 属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。主要当作属性来使用;computed中的函数必须用return返回最终的结果;当computed中的函数所依赖的属性如果没有发生改变的时候,那么调用当前函数的时候结果会从缓存中读取
watch 一个对象,键是需要观察的表达式,值是对应回调函数。主要用来监听某些特定数据的变化,从而进行某些具体的业务逻辑操作;
以上就是有关computed、getters,watch的区别的介绍以及其具体使用的一些要求,虽然有些复杂,但是相信通过以上的介绍,大家对这三者应该有了一定的了解,能够掌握大概的区别了吧。
发表评论
暂时没有评论,来抢沙发吧~