首页 > 试题广场 >

说一说computed和watch的区别?

[问答题]
1、功能上:computed是计算属性,watch是监听一个值的变化,然后执行对应的回调。 2、是否调用缓存:computed中的函数所依赖的属性没有发生变化,那么调用当前的函数的时候会从缓存中读取,而watch在每次监听的值发生变化的时候都会执行回调。 3、是否调用return:computed中的函数必须要用return返回,watch中的函数不是必须要用return。 4、computed默认第一次加载的时候就开始监听;watch默认第一次加载不做监听,如果需要第一次加载做监听,添加immediate属性,设置为true(immediate:true) 5、使用场景:computed----当一个属性受多个属性影响的时候,使用computed-----购物车商品结算。watch–当一条数据影响多条数据的时候,使用watch-----搜索框.
发表于 2022-05-24 21:11:57 回复(0)
computed是计算属性,依赖其他属性值,并且有缓存,只有当依赖的值发生了变化之后才会重新计算,不支持异步操作,而watch更多的是监听,当监听的值发生了变化,会立即执行回调进行操作,支持异步
发表于 2022-06-05 22:41:06 回复(0)
computed是计算属性,依赖其他属性值,并且有缓存,只要他依赖的值发生改变了,下一次获取computed的值时才会重新计算computed的值;watch更多的是监听观察作用,支持异步,每当监听的数值发生变化时就会立即回调进行后续操作。
发表于 2022-05-11 16:02:09 回复(0)
computed一般用于计算得出数据,并将数据缓存在内存当中,computed计算结果一般由他的依赖项所决定,只有当依赖项发生改变,computed才会重新计算,提升性能,在computed中只能进行同步操作。watch一般用于监听某一个属性或者多个属性甚至是一个对象,更多是监听管擦作用数据变化后会引发什么样的动作,在watch中可以进行异步操作
发表于 2022-08-04 16:08:38 回复(0)
computed:计算属性,依赖于多个值,具有缓存,只有在当前依赖的值发生改变之后,才会重新计算,不支持异步操作。应用于需要进行大量数值计算的场景 watch:起到监听的作用,监听一个数据,然后可以进行操作,数值发生变化立即进行后续操作,无缓存,支持异步操作。应用于需要不断监听数值变化、异步或者开销较大而进行操作的场景 watch之中监听需要传入两个参数(普通数据类型),引用数据类型(需要设置deep属性与handle属性的回调函数)
发表于 2022-05-19 17:00:27 回复(0)
功能上:computed是计算属性,watch是监听值的变化,并执行相应的回调;是否使用缓存:computed有缓存,调用当前函数的时候会读取缓存,watch每次监听的值变化时都会执行函数;是否使用return:computed需要使用return返回;watch不是必须要用return;computed默认第一次加载就开始监听,watch没有。如果要设置,可以给watch加一个immediate属性。场景:computed适用于一个属性受多个属性影响,比如购物车结算;watch适合一个数据影响多个数据,比如搜索框
发表于 2023-03-22 18:34:13 回复(0)
1.watch能做的事情比computed多;2.computed的值有缓存,只要computed涉及的数据发生改变,就会重新计算 3.watch的值没有缓存但是支持异步,适合那种数据大量改变,或者需要消耗大量内存,watch主要起到监测数据变化,类似于某些数据的回调,每当监听的数据发生变化都会重新执行回调
发表于 2022-11-18 10:03:10 回复(0)
computed是计算属性,并具有缓存,只有当所依赖的函数发生改变才会重新进行计算,如果没有改变则直接从缓存中调取。watch是监听一个值的变化,触发相对应的函数回调,没有缓存,computed中的函数必须要有return返回,watch中可以没有,computed不支持异步,watch支持异步
编辑于 2023-02-12 16:49:00 回复(0)
computed计算属性是具有缓存属性的,只要依赖他的值发生变化,computed才会重新计算,而wtach监听属性,它是不具有缓存的,支持异步 监听data里面数据的变化,没当监听到数据变化时立即回调执行后续操作,应用场景:computed当一个属性受多个属性影响时 采用computed =》购物车计算 watch:当一个属性影响多个数据时 采用watch -》 搜索框
发表于 2022-09-29 15:51:17 回复(0)
1。功能:computed:计算属性,适合于依赖其他属性的属性计算 watch是监听,适合数据变化时要有回调函数 2。缓存:computed在依赖的数据没有发生改变的时候会从缓存中读取,而watch每次数据改变都会调用回调函数 3.return:computed调用的时候必须要有return,watch不用 4.监听:computed在第一次调用的时候就开启了监听,watch默认第一次不监听,如果要,就加上immediate:true
发表于 2022-08-27 17:09:52 回复(0)
1.computed计算属性:Vue中用于对一些响应式变量逻辑操作后生成一个返回值,computed也具备响应式特性,一旦computed中的变量被改变,它便会触发。computed功能类似于函数,但它与函数不同的是它有缓存,如果输入的变量不变,computed不会被调用直接从缓存获取结果而函数则会被调用。 2. watch侦听器:一个侦听器只能用于侦听一个特定的响应式变量,且一旦响应式变量修改侦听器便会被触发。Vue3.0中加入了watchEffect实现了一个侦听器同时侦听多个变量,且被初始化时侦听器也会调用一次。
编辑于 2022-08-17 16:03:46 回复(0)
computed是依赖一些数据,这些数据任何一个改变都会重新计算,返回一个值,watch是监听一个值改变,如果这个值改变,就执行一定的操作;computed存在缓存,并且一上来就执行,watch不会一上来就执行,如果想要一上来就执行,可以加immediate属性;computed不支持异步操作,watch可以进行异步操作
发表于 2024-03-22 10:50:07 回复(0)
computed是计算属性,一个属性依赖多个属性,当其他属性发生变化的时候才会去重新计算,没有变化被则直接取缓存。watch是一个值发生变化影响其他多个地方,所以当监听的这个值发生变化的时候,watch就会被触发。
编辑于 2024-03-08 15:37:49 回复(0)
computed:计算属性,依赖其他属性值,并且cmputed的值有缓存,只有他依赖的属性值发生改变,下一次获取compoted的值时才会重新计算computed地 值;watch:更多的是观察的作用,支持异步,类似于某些数据的监听回调。每当监听的数据变化时都会执行回调进行后续操作。
发表于 2024-03-04 15:28:11 回复(0)
computed:计算属性,依赖其他属性值,并且有缓存 watch: 监听一个值的变化,执行对应的回调
编辑于 2024-02-22 14:42:19 回复(0)
1.功能:computed是计算属性,根据依赖的数据变化动态更新显示的计算结果。watch是监听某个值的变化,然后做出对应的操作 2.缓存:compu支持缓存,当依赖的数据变化时,计算属性会重新计算,否则就会使用缓存中的值。watch不支持缓存,当监听的值发生变化时,响应执行 3.异步操作:watch适用于数据变化时的异步操作,computed不支持异步操作 4.使用场景:如果一个属性是由其它属性计算而来的,这个属性依赖其它属性,使用computed。需要在数据变化时执行异步操作或者开销较大的操作时,使用watch
发表于 2023-10-12 15:24:32 回复(0)
1.功能:computed是计算属性,依赖其他属性值;watch是监听一个值的变化,然后执行对应的回调 2.是否调用缓存:computed中的函数所依赖的属性没有发生变化,那么调用当前的函数的时候会从缓存中读取,而watch在每次 监听的时候都会执行回调 3.是否调用return:computed中的函数必须要return,watch中不是必须的 4.computed默认第一次加载的时候就开始监听;watch默认第一次加载不做监听:若需要第一次做监听,添加immediate:true 5.watch支持异步,computed不支持 6.使用场景:computed---当一个属性受多个属性影响---购物车结算 watch---当一条数据影响多条数据---搜索框
发表于 2023-09-08 16:27:38 回复(0)
computed值有缓存,触发条件是依赖项发生改变。watch无异步缓存,监听数据变化。
发表于 2023-06-06 13:54:09 回复(0)
computed 和 watch 都可以监视 响应式数据的变化做出对应的逻辑处理。 不同点 computed 需要返回一个响应式数据,并且不止可以监视单个响应式数据源,computed 内部还有缓存机制,能够在响应式数据不发生变化的前提下,直接从缓存中获取数据,直到响应式数据源发送变化,才会更新缓存中的内容 watch 只能监听单一响应式数据的变化,没有返回值,但可以在回调函数中获取到 前后两次变化的值。支持多种配置,如 immediate,deep 等
发表于 2023-03-09 11:31:09 回复(0)
通俗来讲computed能实现的watch可以实现推荐用compuetd以为computed有缓存功能,带有陈述依赖了其他值,当然所依赖的值发生改变时计算属性也会发生改变,2.watch是监听组件data中变化,当组件data发生变化时就会触发watch事件
发表于 2023-03-03 11:58:33 回复(0)